Protractor 量角器和Saucelabs发送testname

Protractor 量角器和Saucelabs发送testname,protractor,saucelabs,browser-testing,Protractor,Saucelabs,Browser Testing,我成功地在SauceLabs上运行了量角器测试,尽管我希望能够将测试的名称发送到服务,例如,所有测试都按浏览器名称分组 有没有办法让我把考试的名字传给SauceLabs 我已经使用Selenium for Python完成了这项工作。但是,我知道使用量角器,您需要编辑conf.js文件,以便capabilities选项将包含带有测试名称的name字段。我还建议使用build字段了解您正在使用的代码的版本: capabilities: { name: 'whatever name',

我成功地在SauceLabs上运行了量角器测试,尽管我希望能够将测试的名称发送到服务,例如,所有测试都按浏览器名称分组


有没有办法让我把考试的名字传给SauceLabs

我已经使用Selenium for Python完成了这项工作。但是,我知道使用量角器,您需要编辑
conf.js
文件,以便
capabilities
选项将包含带有测试名称的
name
字段。我还建议使用
build
字段了解您正在使用的代码的版本:

capabilities: {
    name: 'whatever name',
    build: 'whatever build',
    // Anything else you need
}

和字段是跨平台的。

如果在测试过程中,您拥有SauceLabs sessionId,那么它只需向发送JSON数据包即可


您可能可以通过启动手动SauceLabs会话,从中获取会话ID,然后在browsser JSON REST客户端(如“n”)中手动发送API请求来测试这一点。

您可能只需要添加如下内容:

var testName = 'Testing'; //Change Project's name here in order to be identified in BrowserStack




// An example configuration file.
exports.config = {
    // The address of a running selenium server.
    seleniumAddress: 'http://xxxxx:xxxxx@ondemand.saucelabs.com:80/wd/hub',
    //seleniumAddress: 'http://hub.browserstack.com/wd/hub',
    //seleniumAddress: 'http://127.0.0.1:4723/wd/hub',//Local Appium
    // Capabilities to be passed to the webdriver instance.
    multiCapabilities: [
        {
            name: testName,
            platformName: 'iOS',
            platformVersion: '7.1',
            browserName: '',
            app: 'safari',
            deviceName: 'iPhone Simulator',
            'appium-version': "1.4.0",
            username: 'xxxxxx',
            accessKey: 'xxxxx'

        }
        ,
        {
            name: testName,
            platformName: 'Android',
            platformVersion: '4.4',
            browserName: 'Browser',
            deviceName: 'Android Emulator',
            'appium-version': "1.4.0",
            username: 'xxxxx',
            accessKey: 'xxxxx'
        }


        ],

您可以运行以下小脚本:

browser.executeScript("sauce:job-name=" + name )

如果您想在测试期间或测试开始之前动态设置名称,这通常很有用。

我已经看到了名称和构建字段,但问题是这些字段在代码开始运行之前设置好,因此我无法将测试名称传递到测试中。我可以通过在每个测试之前运行
上的
this.description
来获取每个测试的名称,但我正在努力将其注入配置中。
名称和
构建
只能在启动Selenium实例时设置。您在测试套件中启动了多少个实例?
browser.executeScript("sauce:job-name=" + name )