【问题标题】:how to write dependent test cases in protractor/jasmine?如何在量角器/茉莉花中编写依赖测试用例?
【发布时间】:2017-02-21 23:08:06
【问题描述】:

我正在使用量角器和 jasmine 作为我项目的单元测试工具。我想为例如编写相关的测试用例。如果测试用例 1 失败,请不要执行测试用例 2,而是直接跳到测试用例 3。量角器可以吗?如果是,那怎么办?

 conf.js

    suites: {
            network: 'consumerIndex.js',
            platform: 'adminIndex.js'

    }

adminIndex.js

    describe('Protractor Demo CTL App', function() {

            require('./adminPage.js');
            require('./addSeatPage.js');
            require('./groupusers.js');
            require('./invoiceSettings.js');

    }); 

addSeatPage.js

    it('case 1 ', function() {
            browser.driver.sleep(10000);    
            addSeat.productLink;
            expect(browser.getLocationAbsUrl()).toMatch("/seatSummarydsds");    
    });
    it('case 2 ', function() {

            browser.driver.sleep(10000);    
            element(by.css('[ng-click="goToBuyProducts()"]')).click();
            expect(browser.getLocationAbsUrl()).toMatch("/addSeat");

    });

    it('case 3', function() {
            browser.driver.sleep(10000);    
            addSeat.addToCart(browser.params.testData.datetimeTxt);
            expect(element(by.css('.errLabel')).isDisplayed()).toBe(true);
    });

如果案例 1 失败,我想跳转到案例 3。如果 addSeatPage.js 中的任何情况失败,是否有任何解决方案可以直接跳转到下一个规范文件,即 groupusers.js?

【问题讨论】:

  • 请添加一些代码。你现在尝试了什么?
  • 编写依赖集成测试是一种不好的做法,您的测试应该始终相互独立!但是,您可以查看此链接-stackoverflow.com/questions/32617196/…

标签: angularjs jasmine protractor


【解决方案1】:

我相信依赖测试用例应该保留在一个 it() { ...} 块内。 如果您的测试用例相互依赖,那将是一种难闻的气味。您应该始终编写独立的测试用例,这是软件测试的首要规则之一。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-05
    • 2017-05-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多