我是量角器和javascript的新手。我正在尝试使用multiCapabilities并行执行多个测试。然而,当我在预备或之前执行此操作时,每个规格都执行一次。对于所有测试,是否有一种方法只执行onPrepare和onComplete一次?
我在两种情况下面临这个问题。 1.不同的浏览器。 2.具有多个实例的相同浏览器,即如下。功能:{browserName:'chrome',shardTestFiles:true,maxInstances:2},在这两种情况下,onPrepare下的代码都执行了两次。我需要将每个测试的测试结果写入Json文件,并且我在onPrepare中创建新文件,并且当我使用maxinstances>时它已经重写了。 1
答案 0 :(得分:0)
当您运行具有多功能选项的量角器测试用例时,将为onPrepare
对象中提到的每组功能执行multi capabilities
方法(即)在不同的过程。
在您的情况下,您需要使用beforeLaunch
方法创建测试报告文件。在初始化量角器全局对象之前,此方法仅执行一次。
请参阅https://github.com/angular/protractor/blob/master/lib/config.ts#L404以获取有关beforeLaunch
方法的其他详细信息。