面对新的测试框架不要慌看这里!
我们应该聚焦在以下四个问题上。1、如何生成测试用例?
不同的框架,生成测试用例的方法不一样。
对于线性框架来说,无须编写脚本,只需要点击预设的按钮就能够生成测试用例;比如Katalon,直接录制生成测试用例。
对于多数框架来说,生成测试用例需要编程。当然,不同框架使用的编程语言、编程风格有差异。
对于Selenium框架来说,使用的是通用编程语言Java和Python,可能更多的是对Selenium进行二次封装,以便更好更快的生成用例;
对于Robot Framework来说,使用的是其专用的Robot Framework编程语言。
一般来说,使用框架编程的过程很多时候就是调用库接口的过程。因此作为前提,在编写用例之前,我们需要熟悉框架提供的库的种类和功能,以及这些库所提供的API的使用方法。
2、如何执行测试用例?
当测试用例完成之后,我们需要运行测试用例。
自动化测试是通过GUI图形界面来触发,还是通过CLI命令触发,这因框架而异。
当然,仅仅知道如何触发测试是不够的。我们通常有更多的需求。
例如,如何选择性地执行满足特定条件的测试用例子集?
如何设置全局的执行参数(超时时间、日志路径、报告形式等)?
如何动态地给测试用例集传入参数?
一般来说,一个完整的框架需要提供足够多的控制选项,从而让我们根据需求定制执行测试的方式。
以Robot Framework为例,其执行用例的命令具有30多个不同的选项。
这提供了足够的自由度和一些非常棒的功能。例如其dryrun选项,可以让我们在不实际执行用例的情况下,快速检查出测试用例中参数不匹配、语法不正确、关键词找不到、库导入失败等错误,非常实用。
3、如何检查测试结果?
测试执行结束之后,我们需要关注测试结果。不同的框架会以不同形式提供测试结果。例如,测试结果既能以控制台日志的形式体现、也能够以图表和报告的形式体现,并以邮件发送或者展示在网站上。
根据测试结果,我们可以很容易地了解测试的执行情况,包括测试的成功/失败情况、测试的整体/局部用时等。
当测试失败时,我们尤其需要关注测试失败的具体情况。
通常,我们关心失败是由于我们使用框架的方法不当造成的,还是由于被测软件的质量问题。这一点,只能通过检查和分析测试结果得到。
4、如何扩展测试框架?
一般来说,框架只是提供了最基本的功能。很多时候,框架并不能直接满足自动化测试的需求。这时我们可以寻求第三方的、与框架本身兼容的库或者插件。如果第三方工具不能满足我们的需求,我们就需要开发自己的库和工具。
例如,对于HTTP、SSH等公有协议,我们很容易在网络上找到某个框架的第三方库;
而对于只用于公司产品的私有协议,我们通常无法找到第三方库,只能自己开发。
自己开发时,需要注意的是要遵从框架的规范,使得开发出的库能够与框架无缝兼容。
说在最后,选择了一个框架,在享受其好处时,也不得不承受其不足。
如果我们的关键需求受制于框架,并且框架也不容易扩展,那么我们就可能需要开发自己的框架。这是一件投入较大的事情。在大多数情况下,还是建议重用和有限扩展已有的框架。
页:
[1]