【问题标题】:how to re use entire testcase in another spec file in protractor如何在量角器的另一个规范文件中重新使用整个测试用例
【发布时间】:2019-07-31 07:10:16
【问题描述】:

我已尝试使用此代码在另一个规范文件中重新使用测试用例,但它显示错误。我已经使用带打字稿的量角器

           login-spec.ts

            export const test = function() {
            describe("login", () => {
            it("login",async()=>{
             //lines of code
            })



        function-spec.ts

        import {test} from './login-spec.ts'

              describe("login", () => {
              it("function",async()=>{
                await test();
             })

【问题讨论】:

    标签: angularjs typescript automation protractor


    【解决方案1】:

    这并不完全符合您的要求,但我认为在这种情况下编写一个帮助文件(或页面对象)会更好,该文件导出可以在任何测试中重复使用的登录功能。你可以在 beforeEach 中调用这个函数

    loginPO.js

    module.exports.login = function(username, password){
        //Login functionality code
    
        element(by.linkText('log in')).click();
        browser.driver.sleep(5000);
        element(by.id('loginUsername')).sendKeys(username');
        element(by.id('loginPassword')).sendKeys(password);
    }
    

    testSpec.js

    const loginFuncs = require('./loginPO');
    
    beforeAll(function(){
        loginFuncs.login('admin', 'adminPassword');
    });
    

    【讨论】:

    • 不,这不是我问的。在我的情况下,我需要在不同页面中重用具有不同参数的登录功能..所以我需要在另一个文件中使用整个测试用例
    • @praveen 明白这不是你要问的,但我仍然觉得这是一种可取的方法。我已经更新了答案以显示它如何使用参数工作。如果您将登录功能声明为它自己的测试,那么对于将调用它的每个测试,您将有很多不必要的开销,在您的情况下,这将是几乎每个测试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-09
    • 1970-01-01
    相关资源
    最近更新 更多