Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 打字脚本+;量角器:forEach循环中的webdriver操作出现问题_Javascript_Selenium_Typescript_Selenium Webdriver_Protractor - Fatal编程技术网

Javascript 打字脚本+;量角器:forEach循环中的webdriver操作出现问题

Javascript 打字脚本+;量角器:forEach循环中的webdriver操作出现问题,javascript,selenium,typescript,selenium-webdriver,protractor,Javascript,Selenium,Typescript,Selenium Webdriver,Protractor,我正在尝试删除应用程序()中的一些重复联系人。这些元素在repeater中,下面是我用来删除联系人的功能。它没有正确执行浏览器操作 完整项目@ 方法:删除帐户 控制台输出 我能够为这个问题设置一个解决方案,如下所示 deleteSingleAccount(account: Account): void { let filteredAccounts = this.LIST_CONTACT.filter((elem, index) => {

我正在尝试删除应用程序()中的一些重复联系人。这些元素在repeater中,下面是我用来删除联系人的功能。它没有正确执行浏览器操作

完整项目@

方法:删除帐户 控制台输出
我能够为这个问题设置一个解决方案,如下所示

deleteSingleAccount(account: Account): void {

                let filteredAccounts = this.LIST_CONTACT.filter((elem, index) => {
                        return elem.getText().then((text) => {
                                return (text == account.fname + ' ' + account.lname);
                        });
                })

                filteredAccounts.count().then((count) => {
                        console.log(count+' is the new count')
                        for (let i = 1; i <= count; i++) {
                                filteredAccounts.get(count-i).click();
                                this.LNK_DELETE_CONTACT.click();
                                browser.wait(EC.alertIsPresent,3000);
                                browser.switchTo().alert().accept();
                        }
                });

        }
deleteSingleAccount(帐户:帐户):无效{
让filteredAccounts=this.LIST\u CONTACT.filter((元素,索引)=>{
返回elem.getText()。然后((文本)=>{
返回(text==account.fname+“”+account.lname);
});
})
filteredAccounts.count()。然后((count)=>{
log(count+'是新的计数')

对于(设i=1;i运行此代码时,现在会发生什么?@Xotabu4不会单击要删除的元素,这反过来也不会启用删除按钮,除非我单击删除按钮,否则不会弹出警报。因此,一切都在崩溃。我想需要回答的问题是,它在哪里失败?是否打印出“即将删除”联系人?如果您在
元素之后添加日志语句。click()
是否也打印该语句?因此我的建议是更多地记录日志,并在问题上添加您的控制台输出,因为这将帮助我们了解这里发生了什么。@cnishina..附加控制台输出。@cnishina
TypeScriptProject>protractor ConvertedJSFiles\config\config.js
[09:23:57] I/hosted - Using the selenium server at http://localhost:4444/wd/hub
[09:23:57] I/launcher - Running 1 instances of WebDriver
Started
**********
2 accounts are there with Jimmy
About to delete the contact
About to delete the contact
.**

Pending:

1) Cintact creation should check if contact is created
  Temporarily disabled with xit


2) Cintact creation should delete the selected contact
  Temporarily disabled with xit

3 specs, 0 failures, 2 pending specs
Finished in 18.523 seconds
[09:24:39] I/launcher - 0 instance(s) of WebDriver still running
[09:24:39] I/launcher - chrome #01 passed
deleteSingleAccount(account: Account): void {

                let filteredAccounts = this.LIST_CONTACT.filter((elem, index) => {
                        return elem.getText().then((text) => {
                                return (text == account.fname + ' ' + account.lname);
                        });
                })

                filteredAccounts.count().then((count) => {
                        console.log(count+' is the new count')
                        for (let i = 1; i <= count; i++) {
                                filteredAccounts.get(count-i).click();
                                this.LNK_DELETE_CONTACT.click();
                                browser.wait(EC.alertIsPresent,3000);
                                browser.switchTo().alert().accept();
                        }
                });

        }