网上查了下,似乎selenium是推荐比较多的,但是看了下写起来也不轻松,感觉测试要是这么多页面都用这种脚本写一套太费时间,而且要求测试有一定的代码能力,成本挺大的。不知道有没有其他相对简单的技术?大家公司里都是用什么技术做页面操作的自动化测试?
API 测试和 GUI 测试逻辑上完全不同。 API 测试你可以尽可能傻瓜化,因为都是有语义的。 GUI 测试没办法做到这点。单纯的 UI 组件还好说,带业务逻辑的你只能去写代码模拟这个流程。 现在比较流行基于 BDD 的方案,要写的代码更多。 你说 “要求测试有一定的代码能力,成本挺大的”。 第一,自动化测试的岗位一般叫做“测试开发/研发”,本身就是要写代码的。 第二,成本问题就是工程问题,一共俩人开发的二三十个页面,上自动化测试就是杀鸡用牛刀,还没等你写完测试脚本呢需求和页面就改了。等你啥时候发现“卧槽”,不上自动化测试就会导致开发周期变的很长或让软件质量十分不可控的时候,才是需要自动化测试的时候。这时候自动化测试的成本、和因开发周期或软件质量产生问题的成本,孰高孰低? 一个公司就十个人的时候,财务发工资可能用 Excel 就能统计的了。一百个人的时候呢?一千甚至一万个人的时候呢?是不是得有专业的财务软件了?但你说一上来公司就十个人的时候就花几十万买套用友金蝶之类的,这是得多有钱?上不上自动化测试就跟这个道理是一样的。
API 测试和 GUI 测试逻辑上完全不同。
API 测试你可以尽可能傻瓜化,因为都是有语义的。
GUI 测试没办法做到这点。单纯的 UI 组件还好说,带业务逻辑的你只能去写代码模拟这个流程。
现在比较流行基于 BDD 的方案,要写的代码更多。
你说 “
要求测试有一定的代码能力,成本挺大的
”。第一,自动化测试的岗位一般叫做“测试开发/研发”,本身就是要写代码的。
第二,成本问题就是工程问题,一共俩人开发的二三十个页面,上自动化测试就是杀鸡用牛刀,还没等你写完测试脚本呢需求和页面就改了。等你啥时候发现“卧槽”,不上自动化测试就会导致开发周期变的很长或让软件质量十分不可控的时候,才是需要自动化测试的时候。这时候自动化测试的成本、和因开发周期或软件质量产生问题的成本,孰高孰低?
一个公司就十个人的时候,财务发工资可能用 Excel 就能统计的了。一百个人的时候呢?一千甚至一万个人的时候呢?是不是得有专业的财务软件了?但你说一上来公司就十个人的时候就花几十万买套用友金蝶之类的,这是得多有钱?上不上自动化测试就跟这个道理是一样的。