代码之家  ›  专栏  ›  技术社区  ›  Tester

测试角形

  •  0
  • Tester  · 技术社区  · 6 年前

    我试着在protor中测试一个角度应用程序,但我不明白什么。 我把这条线放在那儿了

    beforeEach(function() {
        browser.get('http://juliemr.github.io/protractor-demo/');
      });

    我想用这一行引用HTML表单的元素:

    fdescribe('Protractor Demo App', function() {
    
      var goButton = element(by.id('gobutton'));
      
      ...and test its result

    在量角器中,我们不会将与特定.ts文件对应的测试文件放在它的文件夹中,因此此测试会在整个项目中搜索ID 哥顿 或者它搜索一个ID 哥顿 那是我在browser.get()上设置的链接吗??

    我的下一个问题是,如果我想要测试的页面需要登录,我可以使用浏览器吗?获取这个页面的URL并测试这些元素,或者在测试过程中我应该做日志的一部分?

    如果我的浏览器在执行一个测试后自动关闭,或者应该保持打开状态,这正常吗?

    2 回复  |  直到 6 年前
        1
  •  0
  •   Lynx 242    6 年前

    这是很多问题;)

    • 量角器将在整个dom中搜索元素的id。即使您使用组件文件夹中提到的*.po.ts文件,它们最终也只能传递由字符串表示的元素id,然后通过该字符串进行搜索。 element(by.id()) .
    • 如果需要登录,则在测试期间必须考虑登录。我怀疑您可以绕过登录机制,除了登录可以在测试阶段关闭并在生产阶段打开。
    • 是的,完成测试后关闭浏览器是量角器的标准行为。这是因为你有你的协议文件之后。
        2
  •  0
  •   Lynx 242    6 年前

    这就是我的draginor.conf.js的样子。给定的路径 target 位于 /src .

    let HtmlScreenshotReporter = require('protractor-jasmine2-screenshot-reporter');
    
    // always create test-report.html, screen shots only in case of failures
    let reporter = new HtmlScreenshotReporter({
      dest: 'target/test-screenshots',
      filename: 'test-report.html',
      reportOnlyFailedSpecs: false,
      captureOnlyFailedSpecs: true,
      pathBuilder: function (currentSpec, suites, browserCapabilities) {
        // will return chrome/your-spec-name.png
        return browserCapabilities.get('browserName') + '/' + currentSpec.fullName;
      }
    });
    
    exports.config = {
    
    ...
    
        beforeLaunch: function () {
          return new Promise(function (resolve) {
            reporter.beforeLaunch(resolve);
          });
        }