C# 如何断言一个页面包含两个可能的文本之一(即非此即彼或断言)?

C# 如何断言一个页面包含两个可能的文本之一(即非此即彼或断言)?,c#,.net,selenium,selenium-webdriver,C#,.net,Selenium,Selenium Webdriver,我试图验证一个页面是否包含两个可能的文本之一。我知道如何断言主体包含某些信息,但我不知道如何在断言中包含非此即彼或构造。有人能帮我吗 下面您可以看到我用来断言页面包含特定文本的常规代码。 如果有人能告诉我如何断言页面包含“Text1”或“Text2”,那将是一个巨大的帮助 IWebElement body = driver.FindElement(By.TagName("body")); Assert.IsTrue(body.Text.Contains("TEXT")); 提前谢谢 您可以执行

我试图验证一个页面是否包含两个可能的文本之一。我知道如何断言主体包含某些信息,但我不知道如何在断言中包含非此即彼或构造。有人能帮我吗

下面您可以看到我用来断言页面包含特定文本的常规代码。 如果有人能告诉我如何断言页面包含“Text1”或“Text2”,那将是一个巨大的帮助

IWebElement body = driver.FindElement(By.TagName("body"));
Assert.IsTrue(body.Text.Contains("TEXT"));

提前谢谢

您可以执行所需的检查,并将每个结果存储在一个变量中,然后对变量执行断言

var text1Exists = body.Text.Contains("TEXT1");
var text2Exists = body.Text.Contains("TEXT2");
Assert.IsTrue(text1Exists && text2Exists);

您可以执行所需的检查,并将每个结果存储在一个变量中,然后对变量执行断言

var text1Exists = body.Text.Contains("TEXT1");
var text2Exists = body.Text.Contains("TEXT2");
Assert.IsTrue(text1Exists && text2Exists);

你的帖子不太清楚,因为你要的是
,但也要
。我猜你的意思是“如何检查页面只包含两个文本中的一个:当它包含文本1时,它不应该包含文本2”

简单地使用a无法达到目的,因为
true | true
等于
true

进来了

对于
bool
操作数,
^
计算其操作数的逻辑异或;也就是说,结果是
true
当且仅当它的一个操作数是
true

试着这样做:

Assert.IsTrue(body.Text.Contains("TEXT1") ^ body.Text.Contains("TEXT2"));

你的帖子不太清楚,因为你要的是
,但也要
。我猜你的意思是“如何检查页面只包含两个文本中的一个:当它包含文本1时,它不应该包含文本2”

简单地使用a无法达到目的,因为
true | true
等于
true

进来了

对于
bool
操作数,
^
计算其操作数的逻辑异或;也就是说,结果是
true
当且仅当它的一个操作数是
true

试着这样做:

Assert.IsTrue(body.Text.Contains("TEXT1") ^ body.Text.Contains("TEXT2"));