【问题标题】:Unable to run specific spec file using protractor无法使用量角器运行特定规范文件
【发布时间】:2018-12-15 21:50:55
【问题描述】:

我正在尝试将“测试文件”组织到文件夹中并使用 protractor 运行特定的规范文件。为此,我创建了以下文件。

heroes_spec.js 文件包含以下代码

var HeroesHomePage = require('C:\Users\agudla\Desktop\VSCodeWorkSpace\my-app\e2e\Heroes\heros_po.js');

describe('Heroes page tests' , function(){
    var heroespage = new HeroesHomePage();
    heroespage.heroesLinkClickEvent();
    browser.driver.sleep(3000);
});

hero_po.js 文件包含以下代码

var heroesLinkClickEvent;

var hero_page = function() {
    this.heroesLinkClickEvent= function(){
    element(by.linkText('Heroes')).click();
  }
};
hero_po.js is as below
module.exports = hero_page;

我的 protractor.conf.js 文件代码如下

exports.config = {
  allScriptsTimeout: 11000,
   suites: {
    heroespage : 'C:\Users\agudla\Desktop\VSCodeWorkSpace\my-app\e2e\Heroes\heroes_spec.js'
  },
  capabilities: 
   { 
     'browserName': 'chrome',
     'seleniumAddress':'http://localhost:4444/wd/hub'
   },    
  baseUrl: 'http://localhost:4200/',
  framework: 'jasmine',
  jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 30000,
    includeStackTrace: true
  },
  onPrepare() {
    require('ts-node').register({
      project: 'e2e/tsconfig.e2e.json'
    });    
  },
}

当我在启动“selenium server”后运行 protractor protractor.conf.js --suite herospage 命令时。

显示未找到规范消息。 谁能帮我解决这个问题。

【问题讨论】:

  • 你确定C:\Users\agudla\Desktop\VSCodeWorkSpace\my-app\e2e\Heroes\heroes_spec.js的路径正确吗?
  • 如果您只想运行一个套件测试,您可以尝试使用 fdescribe jasmine.github.io/api/2.8/global.html#fdescribe
  • 是 C:\Users\agudla\Desktop\VSCodeWorkSpace\my-app\e2e\Heroes\he‌​roes_spec.js 是正确的我右键单击“e2e”文件夹下的文件名并复制路径通过点击“复制路径”选项
  • 我要运行多个spec文件,此时我只给了一个spec文件

标签: node.js npm jasmine protractor


【解决方案1】:

您是否知道,Javascript 使用正斜杠 / 表示路径而不是反斜杠 \

使用反斜杠,您基本上只需退出下一个字符。

所以尝试使用/ 而不是\

heroespage : 'C:/Users/agudla/Desktop/VSCodeWorkSpace/my-app/e2e/Heroes/heroes_spec.js'

在 Protractor 中的所有路径中执行此操作。

这应该可以解决问题。

【讨论】:

  • 我尝试了上述两个选项,它显示“找不到模块'C:UsersagudlaDesktopVSCodeWorkSpacemy-appe2eHeroesheros_po.js'”错误消息
  • 使用/ 代替反斜杠。 nackslash 是 Windows... Protractor 不是。所以heroes_spec.jsprotractor.conf.js 和evtl。更多。
  • 量角器自动获取路径直到您的项目根目录。如果您在根项目文件夹下的文件夹中有规范文件,那么这对我有用:规范:['Tests/TC002.js']
【解决方案2】:

提供项目根文件夹的相对路径。

 suites: {
    heroespage: ['e2e\Heroes\heroes_spec.js']
 }

【讨论】:

    【解决方案3】:

    这是传递的命令:

    protractor src/test/javascript/protractor.conf.js --specs src/test/javascript/e2e/entities\points\points.spec.t
    s
    

    这是量角器的conf文件,然后是命令行参数,然后是值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-25
      • 2020-04-08
      • 1970-01-01
      • 1970-01-01
      • 2019-03-30
      • 1970-01-01
      相关资源
      最近更新 更多