从量角器中的json文件中获取数据

时间:2017-12-27 05:35:18

标签: protractor

我正在研究量角器测试框架以测试Angular Js应用程序。

我陷入了想要获取数据的情况 (例如:测试URL,用户名,密码)来自外部文件说Json文件。

我为此创建了一个json文件,并编写了代码来读取此json文件中的数据,但是我收到错误 as:

DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead.
[11:03:10] I/launcher - Running 1 instances of WebDriver
[11:03:10] I/local - Starting selenium standalone server...
[11:03:12] I/local - Selenium standalone server started at http://10.212.134.201:59697/wd/hub
[11:03:15] E/launcher - Error: Error: Cannot find module 'E:LAM WAH EE_Testing EnviornmentDetailed_Sheet - Copy.geojson'

其中Detailed_Sheet - Copy.geojson是我给出网址名称,用户名和密码的文件。

请有任何想法的人帮助我,以便我知道我的错误在哪里。

1 个答案:

答案 0 :(得分:1)

请参阅下面的示例,该示例假设我们有两个文件,它们位于同一文件夹中:

1)login.auth.json,其内容如下:

{
    "loginurl": "http://172.16.99.47:3001",
    "username": "azizi@hlwe.com",
    "password": "abcd@1234"
}

注意:对于json文件,你不需要使用module.exports或exports.xxx来导出json数据,你只需要在json文件中写一个有效的json数据并使用require()导入,然后你将得到json数据。

2)test.js,其内容如下:

var auth = require('./login.auth.json');

describe('Opne the clinicare website by logging into the site', function() {
    it('Should Add a text in username and password fields and hit login button', function() {
        browser.driver.manage().window().maximize();

        browser.get(auth.loginurl); 

        //Perform Login:UserName 
        element(by.model('accessCode')).sendKeys(auth.username); 

        //Perform Login:Password 
        element(by.model('password')).sendKeys(auth.password); 

        //Perform Login:LoginButton 
        element(by.css('.btn.btn-primary.pull-right')).click(); 
    });
});