资讯专栏INFORMATION COLUMN

web开发自动化测试浅谈

econi / 2414人阅读

摘要:对不起大家我的知识都学杂了今天,讨论一下最近在折腾的一些自动化测试工具,方便大家开发。模拟用户操作模拟用户操作乃是开发测试过程中,最让人蛋疼的一件事。最后使用了,虽然不算自动化测试,但是便利性已经很高了。

对不起大家!我的知识都学杂了……

今天,讨论一下最近在折腾的一些自动化测试工具,方便大家开发。折腾了几天以后,有时候恍惚间,真的觉得一个人能顶一个团队了(逃)

强调一下:本文小白向,新手向。

模拟用户操作

模拟用户操作乃是web开发测试过程中,最让人蛋疼的一件事。每次都要提交表单、点击按钮、增删改查,各种操作翻来覆去。这一次我没有重复过去的老路,决定好好研究一些测试工具。虽说萝卜白菜各有所爱,但是我还是强烈推荐selenium工具系列。感谢LancerComet的辛勤劳作。他的博客里,有一整套搭建教程,同时附带了搭建后的demo。对我这种大神级人物来说,当然是直接拿demo,不看教程的……?

教程有很多,不赘述。讲讲原理:这套工具,需要安装chrome等浏览器驱动,在selenium项目中,通过调用驱动,操作浏览器完成一系列事件以及校验。selenium的文档中,主要内容就是:

期望expect和断言assert

通过设定对页面元素的校验,完成一次判断。如果某个元素出现了,那么判定测试通过,反之不通过。这些校验甚至还可以判定当前url等。

其他操作事件

比如click点击、setvalue设值、clearvalue清空等,可以对表单、按钮等元素进行操作。填写你设定的值,提交表单等。

其他注意事项

在各个操作之间,一定记得留一定的等待时间,比如一秒两秒,可以用pause函数。获取页面元素,一般是使用css-selector,有时候元素多了,还是比较麻烦的。搭配chrome插件selectorgadget,能略微提升工作效率。

web API测试

今天一整天都在研究这个。搜了大量资料,发现postman这个工具不错,据说搭配Jenkins有奇效。然而,Jenkins在Mac下据说有各种bug,而且我自己也没能跑起来,这是什么鬼!弃坑。后来又看到有大神说,自己用python+request+json scheme库,搭建测试工具。这个是真的大神,我搞不定。最后使用了newman+postman,虽然不算自动化测试,但是便利性已经很高了。

都是图形界面,很好用,基本上没啥学习成本。在postman中,设定一些url和键值对,点击send就可以测试。如果比较多,可以保存为一个collection,批量send。如果嫌麻烦,可以在collection里export成json文件,用newman执行即可,命令行输出也很人性化的。

这个网站可以根据你的json数据,创建json校验逻辑。将逻辑放在postman的test栏中,如下图:

右侧也有一些示例,可以点点看。

根据校验逻辑,可以很精确的判断json的格式,好用的不行。

newman使用npm进行全局安装即可。

JS模块测试

这些工具可能大家都比较了解了,karma、jasmine等,这块我目前没有用到,也没有深入了解。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/8758.html

相关文章

  • 浅谈docker

    摘要:另外一个原因是企业文化是否与运动一致,只有企业支持,才能更大地发挥的价值。最后一个原因就是安全性问题,对于这一层的安全的隔离还有待改进,才能进一步得到企业的认可。惠普刘艳凯认为,这也是需要在下一步中改进的一方面。 前言云计算、大数据,移动技术的快速发展,加之企业业务需求的不断变化,导致企业架构要随时更改以适合业务需求,跟上技术更新的步伐。毫无疑问,这些重担都将压在企业开发人员身上;团队...

    MoAir 评论0 收藏0
  • 浅谈docker

    摘要:另外一个原因是企业文化是否与运动一致,只有企业支持,才能更大地发挥的价值。最后一个原因就是安全性问题,对于这一层的安全的隔离还有待改进,才能进一步得到企业的认可。惠普刘艳凯认为,这也是需要在下一步中改进的一方面。 前言云计算、大数据,移动技术的快速发展,加之企业业务需求的不断变化,导致企业架构要随时更改以适合业务需求,跟上技术更新的步伐。毫无疑问,这些重担都将压在企业开发人员身上;团队...

    nidaye 评论0 收藏0
  • 切图崽的自我修养-[MVVM] Js MV*模式浅谈

    摘要:在没有环境下对进行单元测试的时候,应用逻辑正确性是无法验证的更新的时候,无法对的更新操作进行断言。对是通过接口进行,在对进行不依赖环境的单元测试的时候。这里根据上面的例子给出了的单元测试样例。年微软工程师在自己的博客上首次公布了模式。 前言 做客户端开发、前端开发对MVC、MVP、MVVM这些名词不了解也应该大致听过,都是为了解决图形界面应用程序复杂性管理问题而产生的应用架构模式。网上...

    mykurisu 评论0 收藏0
  • 切图崽的自我修养-[MVVM] Js MV*模式浅谈

    摘要:在没有环境下对进行单元测试的时候,应用逻辑正确性是无法验证的更新的时候,无法对的更新操作进行断言。对是通过接口进行,在对进行不依赖环境的单元测试的时候。这里根据上面的例子给出了的单元测试样例。年微软工程师在自己的博客上首次公布了模式。 前言 做客户端开发、前端开发对MVC、MVP、MVVM这些名词不了解也应该大致听过,都是为了解决图形界面应用程序复杂性管理问题而产生的应用架构模式。网上...

    bluesky 评论0 收藏0
  • 切图崽的自我修养-[MVVM] Js MV*模式浅谈

    摘要:在没有环境下对进行单元测试的时候,应用逻辑正确性是无法验证的更新的时候,无法对的更新操作进行断言。对是通过接口进行,在对进行不依赖环境的单元测试的时候。这里根据上面的例子给出了的单元测试样例。年微软工程师在自己的博客上首次公布了模式。 前言 做客户端开发、前端开发对MVC、MVP、MVVM这些名词不了解也应该大致听过,都是为了解决图形界面应用程序复杂性管理问题而产生的应用架构模式。网上...

    shleyZ 评论0 收藏0

发表评论

0条评论

econi

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<