- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否可以告诉 xUnit.net 执行所有操作,例如Assert.True()
在一种测试方法中?基本上在我们的一些使用/测试用例中,所有断言在逻辑上都属于一个相同的测试“范围”,我有例如像这样:
[Fact(DisplayName = "Tr-MissImpl")]
public void MissingImplementationTest()
{
// parse export.xml file
var exportXml = Libraries.Utilities.XML.GenericClassDeserializer.DeserializeXmlFile<Libraries.MedTrace.ExportXml>(
ExportXmlFile);
// compare parsed results with expected ones
Assert.True(exportXml.ContainsRequirementKeyWithError("PERS_154163", "E0032A"));
Assert.True(exportXml.ContainsRequirementKeyWithError("PERS_155763", "E0032A"));
Assert.True(exportXml.ContainsRequirementKeyWithError("PERS_155931", "E0032A"));
Assert.True(exportXml.ContainsRequirementKeyWithError("PERS_157145", "E0032A"));
Assert.True(exportXml.ContainsRequirementKeyWithError("s_sw_ers_req_A", "E0032A"));
Assert.True(exportXml.ContainsRequirementKeyWithError("s_sw_ers_req_C", "E0032A"));
Assert.True(exportXml.ContainsRequirementKeyWithError("s_sw_ers_req_D", "E0032A"));
}
现在如果第一个 Assert.True(...)
失败,其他的没有执行/检查。我不想将这七个断言分解为单独的方法,因为它们在逻辑上确实属于一起(只有当所有七个断言一起通过时,TC 才完全“通过”)。
最佳答案
AAA 的重点是尽可能简化每个部分并保持重点,以便读者可以快速理解测试并轻松隔离失败原因。
这里有 7 个不同的事实
,它们共同构成了一个理论
。因此,您应该创建一个 [Theory]
,其中有 7 组 [InlineData]
代表期望。参见 http://blog.benhall.me.uk/2008/01/introduction-to-xunitnet-extensions.html举个例子。
如果重新执行 Arrange/Act 是一个问题,那么您应该通过在测试类的构造函数中执行此操作来使其成为“夹具”(用 xUnit 测试模式的说法)。
public class WithGenericClassDeserializer
{
var exportXml;
public WithGenericClassDeserializer()
{
// Or move this into the GivenExportXmlFile_ExpectedValueAtKeyShouldMatch
exportXml = Libraries.Utilities.XML.GenericClassDeserializer.DeserializeXmlFile<Libraries.MedTrace.ExportXml>( ExportXmlFile );
}
[Theory( DisplayName = "Tr-MissImpl" )]
[InlineData( "PERS_154163", "E0032A" )]
[InlineData( "PERS_155763", "E0032A" )]
[InlineData( "PERS_155931", "E0032A" )]
[InlineData( "PERS_157145", "E0032A" )]
[InlineData( "s_sw_ers_req_A", "E0032A" )]
[InlineData( "s_sw_ers_req_C", "E0032A" )]
[InlineData( "s_sw_ers_req_D", "E0032A" )]
public void GivenExportXmlFile_ExpectedValueAtKeyShouldMatch( string key, string value )
{
Assert.True( exportXml.ContainsRequirementKeyWithError( key, value ) );
}
}
关于.net - Xunit : Perform all 'Assert' ions in one test method?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1846345/
ionic 4: 我在标签中有一张图片和一个标签,我希望它们并排出现在中央。 HTML:
使用 ionic v3 开发混合应用程序,我在使用 *ngFor 生成的 ionic 列表中有 ionic 项。问题出在 iOS 设备上,即我无法滚动在 y 方向溢出的 ionic 列表。但是安卓设备
我遇到了 ion-item 背景颜色的问题。 我想要什么: 将背景颜色设置为透明。 我有什么: Remember me! 这会生成一个 背景为白色。 我尝试做的事情: 应用程序组
我正在尝试通过 JS 为我的 ionic 输入元素分配一个值。这是我的代码: HTML: JavaScript: function onSuccess(position) { var
完成一些教程后,我开始使用我自己的 Ionic 应用程序。我开始使用 ionic 的空白模板。我的问题是我的 ion-view(在 cards.js 中,见下文)根本没有出现在 ion-nav-vie
我正在开发一个应用程序,我正在从 JSON 获取数据并且它运行良好,但我的问题是我不知道如何使用指令使用 CSS 样式。下面我展示了代码。第二段代码是css起作用的代码。
我正在使用具有动态值的 ion-radio ,并且需要将第一个值设置为使用 react 形式选择的值。 Type
Atualizado em: {{ultimaAtualizacao | date:'dd/MM/yyyy'}} 我想改变 ion-title 的文字大小,我已经尝试过使用 css,但它没有
我的 ion-content 中有两个输入字段,它们都附加了一个 ng-model。然后在我的 ion-footer 中有一个 ng-click,我在其中调用一个函数并传入两个 ng-models。
我正在基于 ionic 框架构建 phonegap 应用程序。在一个 html 页面中,我需要一个标题和一个内容。但是标题与内容重叠。抱歉,我没有足够的声誉来发布图像。 代码如下。 html 页面与
我尝试了多种方法: 设置内联样式,但看起来 @ionic 在生成 toast 时删除了 style="...." 属性 CSS 变量,但不知道如何设置不公开 api( ionic 图标)的嵌套阴影元素
我目前正在开发 Ionic 应用程序并坚持在 ion-header 和 ion-content 中实现图像。 这是我如何实现的屏幕截图。 从截图中可以看出, ionic 标题和 ion-content
我是ionic的新手,我想上传图片,因此我使用“ng-file-upload”上传我的图片。 但代码仅在我删除“ ion-content ”时才起作用。我的模板是:
我想删除调用 ion-select 时生成的 ion-radio(带有弹出界面) Popover Brown Blonde Black
我想删除调用 ion-select 时生成的 ion-radio(带有弹出界面) Popover Brown Blonde Black
我的 View 如下图所示: 我希望视频容器不可滚动(静态),但视频容器下的列表应该是可滚动的。 请问我如何在 Ionic 框架中做到这一点? 我尝试将绝对位置设置为视频容器并将列表放在容器上方。但如
我确定可能有一种方法可以全面覆盖字体颜色,但我不确定语法 - 我想它在 scss 文件中很容易实现 - 有什么想法吗? 最佳答案 在CSS中使用它 *{ color:#123456; } 将C
我想在更改 ionic 选项时传递员工 ID。我试过这个,但它不起作用,如果有任何错误,请告诉我 这是我的代码: Employee {{ employee.FirstName + " " +
到目前为止,我有一个非常简单的应用程序,但我不知道如何修复内容的重叠(内容顶部的标题)。我创建了一个组件 header顾名思义,它包含标题。 header.html
如标题所述,我正在尝试从 $http 请求分配一个列表,然后在 View 中查看该列表。 我认为问题是 View 在数据加载之前显示,如果我理解正确的话。当变量改变时, View 永远不会更新。 有人
我是一名优秀的程序员,十分优秀!