我的公司最近决定开始对我进行测试自动化培训。他们要求我研究能让我开始自动化重复测试用例和回归包的课程。我的公司没有自动化设备,所以很难问人们他们会提出什么建议。
有点背景;我的公司是一家使用Episerver、Umbraco等构建CMS解决方案的.net公司。通过讨论,我的公司将在TFS中使用微软测试经理,但我不熟悉所使用的自动化框架。
有人在这个位置上吗?我的公司愿意投入大量的时间和金钱,所以我需要确保我正在学习正确的科目/技能。
你学到了什么有助于向自动化过渡?例如c#,java,sql,编程知识强,对数据库有很好的了解,硒课程等。
任何帮助都将不胜感激,任何与学习材料/建议课程的链接都会非常有帮助。
提前谢谢。
发布于 2015-12-01 15:17:59
即使您可能最终使用C#,专家的共识也表明Python是初学者程序员的最佳语言。要么使用标准,要么使用IronPython用于.NET (这允许一些很酷的东西)。
学习2种语言(稍后我假设是C#)将允许您区分语言和算法中的复杂性/怪癖,这将使您成为更好的程序员。
没有理由浪费时间学习java,C#更适合,而且Java添加的很少。
SQL/数据库将是有帮助的,而且“很高兴知道”,但是是次要的。
找一位优秀的开发人员,在学习编程(计算思维)和调试的同时指导您。
如果你的导师知道Python的话。Python是一个很好的工具,可以用来解析文本文件、在目录中洗牌等,创建一些小的定制工具,即使不习惯于编写自动测试。如果您可以不使用它,可以用Python编写测试,以提高生产率。
练习你的搜索技能。最好的开始是在这个论坛上找到至少十几个类似于您的问题,这些问题涉及自动化测试人员如何学习编程和向测试自动化过渡。:-)
第一语言是最难学的语言,所以它应该是容易的,但允许建立重要的编程概念的重要理解。
对于初学者,我最喜欢的特性是:
麻省理工学院使用Python作为第一语言。谷歌有哲学“Python在我们能做的地方,C++在我们必须做的地方”和Python是未来100年的语言。。
要想在Java中对强输入和强制OO发出欢声笑语,请阅读名词王国的行刑。不要错过童话“因缺钉子”,转换为Java为例的OO疯狂运行。
学习Python将使您成为其他语言的更好的程序员。特别是如果你要遵循Python的禅宗,生活规则的进出编程就像:面对歧义,拒绝猜测的诱惑。
发布于 2015-12-03 02:14:15
我的建议:
与同事合作,向你介绍C#,视觉工作室等。
一旦你了解了它,学习有关单元测试的知识。
我个人最喜欢的风格是在SpecFlow中使用C#中的Selenium对象。对我来说,它提供了最广泛的代码可重用性。
我建议的理由是:
了解几种开发语言,我通常会尽量保持公司/团队的本土化风格。这样,如果你辞职,被公共汽车撞上,有家庭紧急情况,或者想去度假,进度不会停止。其他人能帮上忙。而且,您的公司已经支付了您的导师,大多数开发人员都希望帮助QA变得更加技术性,并理解他们的困难。
发布于 2015-12-02 13:07:22
这里您需要知道的第一件事是,与测试自动化相比,是一种用于测试管理和辅助手动测试的工具。TFS是一个完整的应用程序生命周期管理工具,如果没有链接的TFS服务器,MTM将无法运行。
与TFS/MTM无缝集成的自动化工具是Microsoft CodedUI和Microsoft单元测试(尽管也支持其他类型的单元测试框架)。
可以在MTM、TFS门户和Visual中创建测试用例。上次我检查时,唯一可以链接到自动化代码的测试用例是在Visual中。我相信TFS 2013和更高的测试套件可以在TFS的门户和MTM中创建,但我认为即使是更高版本的TFS也不允许远程管理除MTM之外的任何东西的自动化。
也就是说,理论上您应该能够使用Visual支持的任何语言来构建自动化--将自动化链接到TFS生态系统中的测试用例的方式是将测试用例与编码方法关联起来。
至于要使用的语言,我建议您使用程序员使用的任何语言,因为这样做有两个优点:
根据我的经验,任何现代语言都很像其他现代语言。一旦您熟悉了语法,它们都会使用类似的结构,您可以在google上搜索标准库和方法(如果它们不存在,可能会发现如何对堆栈溢出进行所需的操作)。我要给出的唯一警告是,如果以一种不使用指针的语言开头,那么迁移到不使用指针的语言会有困难。
最重要的是要记住,自动化就是编码。良好的编码实践适用,您将不断维护、重构和构建您所创建的自动化。
https://sqa.stackexchange.com/questions/15894
复制相似问题