WebDriverIO 教程三:Selenium 测试的浏览器命令, Browser Commands for Selenium Testing, WebDriverIO 教程, WebDriverIO 入门

WebDriverIO 教程三:Selenium 测试的浏览器命令, Browser Commands for Selenium Testing, WebDriverIO 教程, WebDriverIO 入门
WebDriverIO 教程三:Selenium 测试的浏览器命令, Browser Commands for Selenium Testing, WebDriverIO 教程, WebDriverIO 入门

WebdriverIO 是一个非常著名的用于自动化测试的端到端 JavaScript 框架。它基于 Node.js,可以在 WebdriverIO 浏览器命令的帮助下进一步帮助您在浏览器上自动化用户活动。WebDriverIO 浏览器命令用于直接在浏览器上执行某些操作。有几个例子:打开浏览器,查找元素,向前、向后导航,刷新页面也关闭浏览器。

 

在 Selenium 中,创建了一个驱动程序对象来与浏览器交互。但是,在 WebDriverIO 中,您可以设置 WebDriverIO 测试运行器以直接使用全局初始化的“驱动程序”或“浏览器”对象。在本 WebDriverIO 教程中,我将介绍“浏览器”对象以及如何使用它们。运行脚本时,浏览器会话会自动初始化并关闭。您不必在 WebDriverIO 中单独创建对象。

 

在我们之前的WebdriverIO 教程中,我已经介绍了更多关于 WebdriverIO 的基础知识以及如何运行 WedbdriverIO 脚本的内容。在本 WebdriverIO 教程中,我将重点介绍在 WebDriverIO 中处理 Selenium 自动化脚本时可能面临的主要挑战。我将在本 WebDriverIO 教程和示例中,通过用于Selenium 测试的相应 WebdriverIO 命令进一步为所有这些问题提供解决方案。

 

如何使用 WebdriverIO 命令处理浏览器窗口?

在本 WebdriverIO 教程中,我现在将讨论您在处理浏览器窗口以运行 Selenium 测试自动化脚本时可能遇到的一些主要问题。这包括查找您的浏览器窗口大小、它的规格以及您可以在这些浏览器上执行的其他操作。

 

如何使用 WebdriverIO 查找窗口大小?

此命令返回当前窗口大小。基本上,getWindowSize()当您想在特定浏览器大小上运行自动化脚本时会有所帮助。此命令的输出格式为 { height: 798, width: 1200, x: 22, y: 45 }

句法:

browser.getWindowSize()

示例:在控制台上打印当前浏览器窗口大小

describe("Browser Commands ", function() {
       it("getWindowSize example ", function() {
               browser.url("https://justcode.ikeepstudying.com/");
               console.log(browser.getWindowSize());
       });
  });

 

describe("Browser Commands ", function() {
       it("newWindow example ", function() {
               browser.url("https://www.ikeepstudying.com/"); browser.newWindow( "https://www.google.com/", "Google Window", "width=800,height=700,resizable,scrollbars=yes,status=1" ); browser.pause(5000); console.log(browser.getTitle()); // opening Google and writing text on newly opened window $(".//input[@name='q']").setValue("lambdatest.com"); browser.pause(5000); }); });

 

如何使用 WebdriverIO 关闭浏览器窗口?

closeWindow命令与 newWindow 命令非常相似。closeWindow命令有助于在脚本执行之间关闭浏览器。请记住,closeWindow 不会关闭主浏览器。如果浏览器上下文没有被处理并且没有发现父/主上下文,那么它将关闭所有浏览器。

句法

browser.closeWindow()

示例:打开 url https://www.ikeepstudying.com/https://www.google.com/然后关闭所有打开的浏览器。

describe("Browser Commands ", function() {
       it("closeWindow  example ", function() {
               browser.url("https://www.ikeepstudying.com/"); browser.newWindow( "https://www.google.com/", "Google Window", "width=800,height=700,resizable,scrollbars=yes,status=1" ); browser.pause(5000); console.log(browser.getTitle()); // print google title browser.pause(5000); browser.closeWindow(); }); });

 

如何使用 WebdriverIO 切换浏览器窗口?

switchWindow()命令有助于自动切换到特定的浏览器/选项卡。它采用字符串参数作为 url 或浏览器标题名称。

句法:

browser.switchWindow(urlOrTitleOfWindow)

示例:打开两个 URL https://www.ikeepstudying.com/https://www.google.com/然后打印第一个 URL 标题,然后打印第二个浏览器标题

describe("Browser Commands ", function() {
       it("swtichWindow  example ", function() {
               browser.url("https://www.ikeepstudying.com/");

               browser.newWindow(
                       "https://www.google.com/",
                       "Google Window",
                       "width=800,height=700,resizable,scrollbars=yes,status=1"
               );
               browser.pause(5000);
               console.log(browser.getTitle()); // print google title

               browser.switchWindow("https://www.ikeepstudying.com/");
               browser.pause(5000);
               console.log(browser.getTitle()); // print landatest title

               $("=Automation").click();

               browser.switchWindow("Google");
               console.log(browser.getTitle()); // print google title
       });
  });

 

如何使用 WebdriverIO 最大化浏览器窗口?

maximizeWindow命令帮助浏览器最大化浏览器窗口以进行自动化浏览器测试

句法:

browser.maximizeWindow()

例子:

describe("Browser Commands ", function() {
   it("maximize Command", function() {
       browser.url("https://www.ikeepstudying.com/");

       browser.maximizeWindow();
       $("=Automation").click();
   });
});

 

如何使用 WebdriverIO 最小化浏览器窗口?

minimizeWindow帮助用户在执行过程中最小化窗口。请注意,即使浏览器窗口已最小化,脚本仍会继续执行而不会出现任何错误。下面的例子显示,即使浏览器最小化,脚本也能成功点击自动化链接。

句法:

browser.minimizeWindow()

示例:最小化浏览器窗口后,单击LambdaTest url 的自动化链接。

describe("Browser Commands ", function() {
   it("minimize Command", function() {
       browser.url("https://www.ikeepstudying.com/");

       browser.maximizeWindow();
       browser.pause(5000);

       browser.minimizeWindow();

       $("=Automation").click();
   });
});

 

如何使用 WebdriverIO 在浏览器上全屏显示?

使用该fullscreenWindow命令,可以在全屏上看到浏览器。如果可见,它会隐藏浏览器菜单栏和书签。

句法:

browser.fullscreenWindow()

示例:以全屏模式打开 url,然后单击自动化。

describe("Browser Commands ", function() {
   it("fullscreenWindow Command", function() {
       browser.url("https://www.ikeepstudying.com/");
       browser.pause(5000);
       browser.fullscreenWindow();
       $("=Automation").click();
   });
});

 

如何使用 WebdriverIO 浏览器命令导航浏览器窗口?

在执行 Selenium 测试自动化时,您必须导航到不同的 Url,包括您在当前 URL 之前使用过的 URL。在本 WebdriverIO 教程中,我将进一步解决您可能面临的问题。

 

如何使用 WebdriverIO 在同一窗口中打开新 URL?

navigateTo 命令帮助您在同一个打开的浏览器上打开一个新的 url。

句法:

browser.navigateTo(url)

示例:打开 URL https://www.ikeepstudying.com/,然后导航到https://www.google.com/同一页面上的新 URL 。

describe("Browser Commands ", function() {
       it("NavigateTo Command", function() {
               browser.url("https://www.ikeepstudying.com/");
               const title = browser.getTitle();
               console.log(title);
               browser.navigateTo("https://www.google.com/");                
       });
});

 

如何使用 WebdriverIO 导航到上一页?

back()命令有助于自动化任何页面的后退按钮。使用此命令可以返回到打开浏览器的上一页。

句法:

browser.back()

示例:打开 URl https://www.ikeepstudying.com/,然后导航到https://www.google.com/同一页面上的新 URL,然后再次返回到旧 URL。

describe("Browser Commands ", function() {
       it("Back() Command", function() {
               browser.url("https://www.ikeepstudying.com/");
               const title = browser.getTitle();
               console.log(title);

               browser.navigateTo("https://www.google.com/");
               browser.back();
               const title = browser.getTitle();
               console.log(title);
       });  
});

 

如何使用 WebdriverIO 刷新页面?

刷新是自动化中不太常用的命令。WebDriverIO 提供此命令来重新加载您当前的浏览器。

句法:

browser.refresh()

示例:打开 Url 并重新加载相同的 url。

describe("Browser Commands ", function() {
       it("refresh() Command", function() {
               browser.url("https://www.ikeepstudying.com/");
               browser.refresh();
               console.log(browser.getTitle());
       });
});

 

本文:WebDriverIO 教程三:Selenium 测试的浏览器命令, Browser Commands for Selenium Testing, WebDriverIO 教程, WebDriverIO 入门

One Comment

Leave a Reply