我正在使用Codeception + Selenium。
在我的网站和电子邮件中,有时我会有一个由多个段落组成的文本。我想在验收测试中检查所有或大部分。我知道我可以做到
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.home_view);
......
....
.
getSupportFragmentManager().addOnBackStackChangedListener(new FragmentManager.OnBackStackChangedListener() {
@Override
public void onBackStackChanged() {
Fragment f = getSupportFragmentManager().findFragmentById(R.id.view_content);
if (f != null) {
updateTitleAndDrawer(f);
}
}
});
}
private void updateTitleAndDrawer(Fragment f) {
String name = f.getClass().getName();
if (name != null) {
ChangeTitle(name);
}
}
private void ChangeTitle(String fragmentName) {
if (fragmentName.equals(Test_Home.class.getName())) {
_frag_title.setText(nav_items[0]);
} else if (fragmentName.equals(Diseases_Fragment.class.getName())) {
_frag_title.setText(nav_items[1]);
} else if (fragmentName.equals(Questions_Fragment.class.getName())) {
_frag_title.setText(nav_items[2]);
..........
.......
}
}
如果我尝试在canSee()中检查多个段落,则会失败。
你知道如何查看多段文字吗?
答案 0 :(得分:2)
我认为最好的方法是使用" grabMultiple" (PhpBrowser)
$p = $I->grabMultiple('.article-body p');
codecept_debug($p);
>> [
0 => "P1 text",
1 => "P2 Text",
2 => "P3 Text"
]
将返回匹配元素的数组,以便您可以测试它们的数量,并检查它们的文本。