2017-03-16 1 views
0

각도기를 사용하고 있는데 이상한 문제가 있습니다. 로그인하고 몇 가지 테스트 및 로그 아웃을 실행합니다. 모든 것이 여기에서 잘 작동합니다. 다른 사용자 ID를 사용하여 동일한 테스트를 실행하려면 다시 로그인해야합니다. 사용자 ID와 암호가 각 필드에 입력되고 로그인이 성공적으로 완료되었지만 나머지 테스트를 실행하지 않고 프로세스가 종료되고 오류 메시지가 나타나는 경우에도 두 번째입니다.요소를 찾지 못하고 요소를 찾은 후 요소를 찾은 후 요소를 찾은 다음 요소를 찾지 못했습니다.

ar testData = require('./Test Data/Users.json'); 

describe('SSUE Login', function() { 

    it('Verifies user access', function() { 


     browser.driver.get('https://url'); 
     browser.ignoreSynchronization = true; 
     element(by.id('userInput')).sendKeys(testData[1].username); 
     element(by.id('passwordInput')).sendKeys(testData[1].passwordField); 
     element(by.id('login-button')).click(); 
     browser.driver.sleep(9000); 
     browser.waitForAngular(); 

     element(by.css('.AtlanticIcon_header_logout')).getText().then(function(text){ 
     console.log('Login Successful '+text+' icon visible in UI'); 

     }); 
     if(element(by.xpath('//div[@class="walkme-custom-balloon-content-wrapper"]')).isPresent().then(function(){ 
       element(by.xpath('//div[@class="walkme-custom-balloon-content-wrapper"]/div[1]')).click(); 
     })); 

     browser.driver.sleep(2000); 
     } 
    }, 90000); 
}); 

아래는 I 로그인 공지 사항 및 (6) 테스트를 실행 내 설정 파일입니다 : 다음은 내 코드와 오류가 난

코드를 얻을 수있다. 마지막 6 번의 테스트에서 'gridFilter.js' 로그 아웃 작업이 있습니다. 다음으로 'login2.js'을 통해 다른 사용자 ID를 사용하여 다시 로그인하십시오. 사용자가 성공적으로 loged되지만 로그인 후 다음 테스트가 실행되지 않고 브라우저가 반복적으로 자신의 마지막 과정 종료에로드하고 JSON으로 결과 출력을 얻을 또한

exports.config = { 
    seleniumAddress : 'http://localhost:4444/wd/hub', 
    specs    : ['login.js', 'userType.js', 'globalFilterOptions.js', 'languageTest.js', 'loadDatagrid.js', 'datagridicons.js', 'gridFilter.js', 'login2.js', 'userType.js', 'globalFilterOptions.js', 'languageTest.js', 'loadDatagrid.js', 'datagridicons.js', 'gridFilter.js', 'login3.js', 'userType.js', 'globalFilterOptions.js', 'languageTest.js', 'loadDatagrid.js', 'datagridicons.js', 'gridFilter.js', 'login4.js', 'userType.js', 'globalFilterOptions.js', 'languageTest.js', 'loadDatagrid.js', 'datagridicons.js', 'gridFilter.js', 'login5.js', 'userType.js', 'globalFilterOptions.js', 'languageTest.js', 'loadDatagrid.js', 'datagridicons.js', 'gridFilter.js', 'login6.js', 'userType.js', 'globalFilterOptions.js', 'languageTest.js', 'loadDatagrid.js', 'datagridicons.js', 'gridFilter.js'], 
    // Exclude files if needed 
    exclude: [], 


    baseUrl: 'http://localhost:8000', 
    rootElement: 'html', 

    framework   : 'jasmine2', 

    jasmineNodeOpts: { 
    showColors: true, 
    defaultTimeoutInterval: 30000 
    ,print: function() {} 
    }, 

    onPrepare: function() { 
    var SpecReporter = require('jasmine-spec-reporter'); 
    // add jasmine spec reporter 
    jasmine.getEnv().addReporter(new SpecReporter({displayStacktrace: true})); 
    }, 

    onPrepare: function() { 
    var JSONReporter = require('jasmine-json-test-reporter'); 
    jasmine.getEnv().addReporter(new JSONReporter({ 
     file: 'SSUE-Daily-Satus-Report.json', 
     beautify: true, 
     indentationLevel: 4 // used if beautify === true 
    })); 
}, 


    // An array of capability objects 
    multiCapabilities : [ 
    { 
     browserName : 'chrome' 

     // Add another set of specs for this browser only 
     // specs: [] 
    } 
    ] 
}; 

여기에 결국 결과를 추가하고 내가 JSON

"suite1": { 
    "id": "suite1", 
    "description": "SSUE Login", 
    "fullName": "SSUE Login", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec0", 
      "description": "Verifies user access", 
      "fullName": "SSUE Login Verifies user access", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite2": { 
    "id": "suite2", 
    "description": "User Details:", 
    "fullName": "User Details:", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec1", 
      "description": "User type and id", 
      "fullName": "User Details: User type and id", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite3": { 
    "id": "suite3", 
    "description": "Global Filter:", 
    "fullName": "Global Filter:", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec2", 
      "description": "Displays User entitled customers and inventories", 
      "fullName": "Global Filter: Displays User entitled customers and inventories", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite4": { 
    "id": "suite4", 
    "description": "Langauge Selection : ", 
    "fullName": "Langauge Selection : ", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec3", 
      "description": "Test check the language options", 
      "fullName": "Langauge Selection : Test check the language options", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite5": { 
    "id": "suite5", 
    "description": "Datagrid Load Test :", 
    "fullName": "Datagrid Load Test :", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec4", 
      "description": "Datagrid Clickable in LNP", 
      "fullName": "Datagrid Load Test : Datagrid Clickable in LNP", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite6": { 
    "id": "suite6", 
    "description": "Datagrid Icons :", 
    "fullName": "Datagrid Icons :", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec5", 
      "description": "Displayed after the grid loads", 
      "fullName": "Datagrid Icons : Displayed after the grid loads", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite7": { 
    "id": "suite7", 
    "description": "Group Filter Test ", 
    "fullName": "Group Filter Test ", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec6", 
      "description": "Testing filtering groups", 
      "fullName": "Group Filter Test Testing filtering groups", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite8": { 
    "id": "suite8", 
    "description": "SSUE Login", 
    "fullName": "SSUE Login", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec7", 
      "description": "Verifies user access", 
      "fullName": "SSUE Login Verifies user access", 
      "failedExpectations": [], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "passed" 
     } 
    ] 
}, 
"suite9": { 
    "id": "suite9", 
    "description": "SSUE Login", 
    "fullName": "SSUE Login", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec8", 
      "description": "Verifies user access", 
      "fullName": "SSUE Login Verifies user access", 
      "failedExpectations": [ 
       { 
        "matcherName": "", 
        "message": "Failed: No element found using locator: By(css selector, *[id=\"userInput\"])", 
        "stack": "NoSuchElementError: No element found using locator: By(css selector, *[id=\"userInput\"])\n at WebDriverError (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\error.js:27:10)\n at NoSuchElementError (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\error.js:242:10)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:808:27\n at ManagedPromise.invokeCallback_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:1379:14)\n at TaskQueue.execute_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2913:14)\n at TaskQueue.executeNext_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2896:21)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2775:27\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:639:7\n at process._tickCallback (node.js:369:9)Error\n at ElementArrayFinder.applyAction_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:461:27)\n at ElementArrayFinder._this.(anonymous function) [as sendKeys] (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:103:30)\n at ElementFinder.(anonymous function) [as sendKeys] (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:829:22)\n at Object.<anonymous> (C:\\Protector\\SSUE_Daily_Status\\login3.js:11:35)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasminewd2\\index.js:94:23\n at new ManagedPromise (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:1082:7)\n at controlFlowExecute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasminewd2\\index.js:80:18)\n at TaskQueue.execute_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2913:14)\n at TaskQueue.executeNext_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2896:21)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2820:25\nFrom: Task: Run it(\"Verifies user access\") in control flow\n at Object.<anonymous> (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasminewd2\\index.js:79:14)\n at attemptAsync (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1916:24)\n at QueueRunner.run (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1871:9)\n at QueueRunner.execute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1859:10)\n at Spec.Env.queueRunnerFactory (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:697:35)\n at Spec.execute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:359:10)\n at Object.fn (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:2479:37)\n at attemptAsync (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1916:24)\n at QueueRunner.run (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1871:9)\n at QueueRunner.execute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1859:10)\nFrom asynchronous test: \nError\n at Suite.<anonymous> (C:\\Protector\\SSUE_Daily_Status\\login3.js:6:3)\n at addSpecsToSuite (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:833:25)\n at Env.describe (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:802:7)\n at jasmineInterface.describe (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:3375:18)\n at Object.<anonymous> (C:\\Protector\\SSUE_Daily_Status\\login3.js:4:1)\n at Module._compile (module.js:409:26)\n at Object.Module._extensions..js (module.js:416:10)\n at Module.load (module.js:343:32)\n at Function.Module._load (module.js:300:12)", 
        "passed": false, 
        "expected": "", 
        "actual": "" 
       } 
      ], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "failed" 
     } 
    ] 
}, 
"suite10": { 
    "id": "suite10", 
    "description": "SSUE Login", 
    "fullName": "SSUE Login", 
    "failedExpectations": [], 
    "status": "finished", 
    "specs": [ 
     { 
      "id": "spec9", 
      "description": "Verifies user access", 
      "fullName": "SSUE Login Verifies user access", 
      "failedExpectations": [ 
       { 
        "matcherName": "", 
        "message": "Failed: No element found using locator: By(css selector, *[id=\"userInput\"])", 
        "stack": "NoSuchElementError: No element found using locator: By(css selector, *[id=\"userInput\"])\n at WebDriverError (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\error.js:27:10)\n at NoSuchElementError (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\error.js:242:10)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:808:27\n at ManagedPromise.invokeCallback_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:1379:14)\n at TaskQueue.execute_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2913:14)\n at TaskQueue.executeNext_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2896:21)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2775:27\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:639:7\n at process._tickCallback (node.js:369:9)Error\n at ElementArrayFinder.applyAction_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:461:27)\n at ElementArrayFinder._this.(anonymous function) [as sendKeys] (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:103:30)\n at ElementFinder.(anonymous function) [as sendKeys] (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\built\\element.js:829:22)\n at Object.<anonymous> (C:\\Protector\\SSUE_Daily_Status\\login4.js:13:35)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasminewd2\\index.js:94:23\n at new ManagedPromise (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:1082:7)\n at controlFlowExecute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasminewd2\\index.js:80:18)\n at TaskQueue.execute_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2913:14)\n at TaskQueue.executeNext_ (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2896:21)\n at C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\selenium-webdriver\\lib\\promise.js:2820:25\nFrom: Task: Run it(\"Verifies user access\") in control flow\n at Object.<anonymous> (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasminewd2\\index.js:79:14)\n at attemptAsync (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1916:24)\n at QueueRunner.run (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1871:9)\n at QueueRunner.execute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1859:10)\n at Spec.Env.queueRunnerFactory (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:697:35)\n at Spec.execute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:359:10)\n at Object.fn (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:2479:37)\n at attemptAsync (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1916:24)\n at QueueRunner.run (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1871:9)\n at QueueRunner.execute (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:1859:10)\nFrom asynchronous test: \nError\n at Suite.<anonymous> (C:\\Protector\\SSUE_Daily_Status\\login4.js:6:3)\n at addSpecsToSuite (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:833:25)\n at Env.describe (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:802:7)\n at jasmineInterface.describe (C:\\Users\\surbhat\\AppData\\Roaming\\npm\\node_modules\\protractor\\node_modules\\jasmine\\node_modules\\jasmine-core\\lib\\jasmine-core\\jasmine.js:3375:18)\n at Object.<anonymous> (C:\\Protector\\SSUE_Daily_Status\\login4.js:4:1)\n at Module._compile (module.js:409:26)\n at Object.Module._extensions..js (module.js:416:10)\n at Module.load (module.js:343:32)\n at Function.Module._load (module.js:300:12)", 
        "passed": false, 
        "expected": "", 
        "actual": "" 
       } 
      ], 
      "passedExpectations": [], 
      "pendingReason": "", 
      "status": "failed" 
     } 
    ] 
}, 
+0

사용자 1과 2 모두에 로그인하는 코드를 제공 할 수 있습니까? – nilesh

+0

각도기의 버전은 무엇입니까? 또한 ignoreSynchronization을 사용하는 경우 자체 타임 아웃을 제공하고 기다리거나 then 문에 중첩해야합니다. – cnishina

+0

내 두 로그인 모두 동일한 코드 –

답변

1

에 시험 결과 변환하고되는 당신은 당신의 코드에서 browser.pause를 추가하고 브라우저에있는 상태 무엇을 볼 수 있습니다. 당신은 아직 로그인 또는 사용자 이름 입력 아무튼되는 것을 알 수 있습니다 존재하지 않습니다 (어쩌면 앱의 워크 플로가 사용자 이름을 기억합니다). 이것은 코드 나 스택 트레이스에서 결론을 내릴 수는 없지만 시도해보십시오.

내가 시도 할 것입니다 :

  • 탐색 로그인 페이지로
  • 사용자와의
  • 로그인 0
  • 로그 아웃
  • browser.pause을 브라우저의 상태를 검사

다음과 같음 :

describe('login and logout',() => { 
    beforeEach(() => { 
    // navigate to login page 
    }); 

    it('should be logged in user 0',() => { 
    element(by.id('userInput')).sendKeys(testData[0].username); 
    element(by.id('passwordInput')).sendKeys(testData[0].passwordField); 
    element(by.id('login-button')).click(); 

    // assertions about logging in 
    // process to log out 
    // assertions about logging out 
    }); 

    // this spec should not run but we'll leave it in. 
    it('should be logged in user 1',() => { 
    element(by.id('userInput')).sendKeys(testData[1].username); 
    element(by.id('passwordInput')).sendKeys(testData[1].passwordField); 
    element(by.id('login-button')).click(); 

    // assertions about logging in 
    // process to log out 
    // assertions about logging out 
    }); 

    afterEach(() => { 
    // stop here to see what's going on with your browser. 
    // in the window, navigate to your login page. possibly your 
    // username input does not exist for various reasons. maybe this 
    // is a bug. 
    browser.pause(); 
    }); 
}); 
+0

답장을 보내 주셔서 감사합니다. 네가 여기서 의심했던 것과는 다른 상황이있다. 다양한 로그인 ID에 대해 몇 가지 테스트 케이스를 실행해야합니다. (login1, 테스트 1, 테스트 2, 테스트 3 로그 아웃, 로그인 2, 테스트 1, 테스트 2, 테스트 3, 로그 아웃 한 다음 로그인 3과 같이). –

+0

그래서 처음 로그인하고 test1, test2, test3 .....을 실행 한 다음 로그 아웃하고 다시 로그인하십시오. 모든 것이 여기까지 잘 작동합니다. json 파일에서 전달하는 로그인 윈도우와 사용자 ID 및 비밀번호도 표시됩니다.두 번째 사용자도 로그인하지만 잠시 후 스크립트가 종료되고 테스트 결과를 캡처하는 데 사용중인 json 파일로 오류가 전송됩니다. 오류는 스크립트가 이미이 요소에 대한 키를 보내고 로그인 버튼을 클릭 한 곳에서 로그인 입력 텍스트 상자를 찾을 수 없다는 것입니다. –

+0

글쎄, 내 질문을 개선해야한다고 생각합니다. 이 오류가 발생하는 간단한 코드 스 니펫 인 구성 파일을 포함하십시오. 또한 브라우저 이름, 브라우저 버전, 브라우저 드라이버, 운영 체제, 노드 버전, 분도기 버전 및 시도한 것을 포함하십시오. 귀하의 문제를 추측하고 내 권고안을 디버깅하기 때문에 내 답장은 도움이되지 않습니다. – cnishina

관련 문제