首页 > 解决方案 > nodejs中如何根据条件编写多个返回条件

问题描述

对于 webdriverIo,我们将元素的 xpath 作为函数的返回值

  get loginButton() {
    return browser.element("//div[@class='login']");
  }

但现在我们为移动浏览器、PC 浏览器以及移动应用程序保留相同的功能名称。所以我的疑问是:

  1. 我们可以只保留一个函数并编写基于条件的返回吗
  2. 我们可以像 testng 一样使用注释吗

像 :

get loginButton() {
    android : return browser.element("//div[@class='android-login']");
    ios : return browser.element("//li[@class='ios-login']");
    chrome : return browser.element("//a[@class='pc-login']");
  }

或者我们可以用 Switch 或任何其他方法编写。请帮忙

标签: node.js

解决方案


在我看来,您可能会在函数中使用 Switch 或 Else-If 语句(普通 JS)。

 function loginButton(x){
  if (x === "android "){
    return browser.element("//div[@class='android-login']");
  }
  else if (x == "ios"){
    return browser.element("//li[@class='ios-login']");
  }else if (x == "chrome"{
    return browser.element("//a[@class='pc-login']");
  } else{
    return -1;
  };
};

Switch 语句也应如此。


推荐阅读