如何根据Selenium(C#)中的用户类型通过SWITCH验证各种选项



我在NUnit框架上使用 -Selenium(C#(,我正在尝试验证我的测试中的一个条件,该条件根据已登录的用户为用户提供各种选项(如下所述( -

  1. 用户 1--个人帐户和企业帐户
  2. 用户 2--个人账户、企业账户和零售账户
  3. 用户3-- 企业账户、批发账户、零售账户和个人账户

我要测试的代码是这样的 -->

<div class="ng-star-inserted">
<!----><div class="row ng-star-inserted">
<div class="col-md-12">
<button class="btn w-btn-teleport-alt" id="account-type-btn-{idx}" 
type="button">
Retail Account
</button>
</div>
</div><div class="row ng-star-inserted">
<div class="col-md-12">
<button class="btn w-btn-teleport-alt" id="account-type-btn-{idx}" 
type="button">
Business Account
</button>
</div>
</div><div class="row ng-star-inserted">
<div class="col-md-12">
<button class="btn w-btn-teleport-alt" id="account-type-btn-{idx}" 
type="button">
Consumer Account 
</button>
</div>
</div><div class="row ng-star-inserted">
<div class="col-md-12">
<button class="btn w-btn-teleport-alt" id="account-type-btn-{idx}" 
type="button">
Wholesale Account
</button>
</div>
</div><div class="row ng-star-inserted">     
<div class="col-md-12">
<button class="btn w-btn-teleport-alt" id="account-type-btn-{idx}" 
type="button">
General Account
</button>
</div>
</div>
</div>

验证这一点的最佳方法是什么,以便根据登录的用户(由 app.config 驱动(我应该能够验证存在的正确按钮。

SWITCH是验证这一点的最佳方式吗?任何帮助,不胜感激。

谢谢

取决于 switch 语句将如何实现,我实际上看不出为什么不使用 SWITCH。 这是sed,没有开关:

取决于您的自动化解决方案是如何制作的,但我很快在我的解决方案中做了一个例子(我使用 https://bitbucket.org/mk_meros/webautomation/wiki/Home 作为硒的框架(

在我的解决方案中,我会做这样的事情:

Xpath://button[text((='{0}']

[When(@"I can see buttons:")]
[Then(@"I can see buttons:")]
public void ICanSeeButtons(Table table)
{
foreach (var row in table.Rows)
{
var buttonValue = row["buttons"];
var field = this.Page.ButtonByText.With(buttonValue);
field.Assert.Is.Displayed();
}
}

此解决方案将是通用的,但它需要针对不同的用户进行三个测试。此外,我建议在同一测试中检查NotDisplay。

最新更新