在 angularjs 之外进行 End-2-End 测试
Posted
技术标签:
【中文标题】在 angularjs 之外进行 End-2-End 测试【英文标题】:End-2-End Testing outside angularjs 【发布时间】:2014-04-10 08:22:53 【问题描述】:我正在寻找一种在真实浏览器和真实设备上测试应用或网站的方法,该方法不是基于 angularjs。我找到了CasperJS,但 CasperJS 只能在无头浏览器上运行。
是否有支持的测试运行程序/测试框架组合:
咕噜声 所有主流浏览器(Chrome、Firefox、Safari、IE) 无头浏览器 (PhantomJS) (可选)模拟触摸手势【问题讨论】:
【参考方案1】:我会选择量角器。我知道它的主要目标是有角度的,但没有角度也可以正常工作。它有很好的快捷功能。我们用它来测试非角度站点,它看起来足够稳定。否则它是基于webdriverjs的,它也可以与phantomjs一起工作。
有一个很好的入门设置:https://github.com/angular/angular-seed
此页面可以帮助您根据您的要求对其进行调整:
http://ng-learn.org/2014/02/Protractor_Testing_With_Angular_And_Non_Angular_Sites/
以及主要网址:
https://github.com/angular/protractor https://code.google.com/p/selenium/wiki/WebDriverJs我没有测试phantomjs部分,但是google说应该没问题。
关于主要浏览器 Protractor 也可以连接到 Saucelabs。 http://www.saucelabs.com/
他们目前拥有 301 个不同的设备/操作系统/浏览器平台。 https://saucelabs.com/platforms
【讨论】:
【参考方案2】:Selenium 无疑是满足您要求的最广泛使用的测试自动化工具。我个人大部分时间都使用Sahi,它的作用相同,但 afaik 没有 grunt 集成。
【讨论】:
以上是关于在 angularjs 之外进行 End-2-End 测试的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法在 AngularJS 之外重新定义绑定到 $ctrl 的函数?
会话用户名未显示在 angularjs ngView 模板内,但在 ngView 之外显示