我有一套mocha测试,可以启动Spectron在Electron应用程序上进行端到端测试。
当我尝试通过npm run
运行测试时,他们只是超时并失败。似乎该应用程序尚未启动。 VSTS中有一个Run Functional Tests
构建步骤模板,但它适用于实际的测试DLL。是否有类似的Javascript端到端测试?
答案 0 :(得分:0)
托管代理正在作为服务运行,但是启动Spectron以使用Electron app进行测试需要与窗口交互并且测试在构建代理机器上运行。因此,您需要设置一个内部构建代理来进行该测试(使用this测试样本可以正常工作。构建步骤:npm install,npm install test)
有关设置内部版本代理的更多信息,您可以参考this文章。
答案 1 :(得分:0)
由于测试需要与桌面交互,因此它们不适合编译时通常没有应用程序运行实例的编译时间。在构建时坚持纯单元测试。更合适的方法是使用Release Management来协调这些测试。
也就是说,您可以轻松部署您的应用程序(构建或发布)和。使用功能测试任务启动UI交互式任务。您需要部署了测试代理的计算机,但也有一项任务。
由于功能(端到端)测试与桌面交互,因此您只能同时运行一个。如果你只需要几分钟就可以了,但随着你获得更多功能性乳头,这可能会更长。功能测试任务允许您跨多个代理拆分测试执行,以便您可以并行运行测试。
由于您可以选择以交互模式配置自己的Build Agent,因此无论如何都需要服务器。您可以从一开始就使用此模型,以便进行扩展。
如果Visual Studio测试适配器不适用于您的框架,那么您可以创建自己的Visual Studio测试适配器,以及功能测试插件,检测并执行任何测试框架。对于Javascript,您会发现http://mortenhoustonludvigsen.github.io/JsTestAdapter/CreatingATestAdapter/有一些很棒的示例,说明如何创建Jasmin测试适配器作为示例。