我的问题是关于BDD(Specflow)的最佳实践。 在我测试的web应用程序中,我必须编写一个关于创建合同的功能。使用Specflow的最佳方式
要创建合同,用户必须通过8个选项卡,并且对于每个选项卡用户将输入超过15个值(最小值4,最大值40)。
我的命题是:
Given Go to the screen "Contrats"
And Click on the button "New contract"
When Enter in Tab1
| Field1 | Field2 | Field3 |
| -----------| ------------| ----------|
And Click on the Next button
And Enter in Tab2
| Field1 | Field2 |
| --------------- | -----------|
And Click on the Next button
And Enter in Tab3
| Field1 | Field2 | Field 3| Field4 | Field5 | Field6 |Field7 |
| -------| -------| ------ | -------- | --------- | -------| ----------------|
And Click on the Next button
And Enter in Tab4
| Field1 | Field2 | Field 3| Field4 | Field5 | Field6 |Field7 | Field8|
| -------| -------| ------ | -------- | --------- | -------| ----------------| ------|
And Click on the Next button
And Enter in Tab5
| Field1 | Field2 | Field 3| Field4 | Field5 | Field6
| -------| -------| ------ | -------- | --------- | -------|
And Click on the Next button
And Enter in Tab6
| Field1 | Field2 | Field3 |
| -----------| ------------| ----------|
And Click on the Next button
And Click on the Next button
And Cliquer sur Oui
And Enter in Tab7
| Field1 | Field2 |
| -----------| ------------|
And Click on confirm enregistration
And Save the contract reference and close the popup
And Click on button No
Then Redirecting the Summary tab
所以在这种情况下为每个标签我必须对模型为例:
public class Tab1{
public string Field1 { get; set; }
public string Field2 { get; set; }
public string Field3 { get; set; }
}
问题: 在这个功能我是尝试只输入必填字段。 但是在其他功能中,我必须输入更多的字段,所以在Tab1中,我将输入例如37个字段。 我可以在这种情况下,这样做:
创建另一种模式?:我有太多的车型
2- 创建领域的最高只是一个模型,并为第一种情况我会为其他战队设置一个空值(Field4-> Field37):模型的属性太多。
3-为TAB1的每一个集团,我们创建类,如:
public Class Tab1{
public Bloc1 Field1 { get; set; }
public Bloc2 Field2 { get; set; }
public Bloc3 Field3 { get; set; }
public class Bloc1{
public string Field1 { get; set; }
public string Field2 { get; set; }
public string Field3 { get; set; }
}
public Class Bloc2{
public string Field1 { get; set; }
public string Field2 { get; set; }
public string Field3 { get; set; }
}
.
.
.
}
但是这种解决方案我怎么能写我的功能?
我想你不明白我的问题,因为在这里我没有试图用多个例子来测试一些东西,但这只是一个例子,但我必须测试的网页包含多个字段。但你说的是我只有2个字段的用户名和密码,我想用多个例子来测试这两个字段。 – user3446229
我提供的仅仅是一个例子。您可以根据需要添加尽可能多的测试数据字段。像用户名和密码一样,你可以添加Field1,Field2,Field3等。我已经使用了20多个字段来测试。如果你想要,你可以使用不同组的测试数据进行相同的测试。如果没有,只需使用一套。 –
也是同样的问题,在这里你将如何实现解决方案,这一步。在我的情况下,我不是seraching使用**示例**只是一行,但我面临的问题是在那之后,当我将实现此解决方案我有义务使用一个有5个字段的列表,我的问题是关于数字而不是输入。 – user3446229