这是我的终点:
Sub Test()
Dim rng As Range
Dim lr As Long
With Sheet1.Range("A:A") 'Change to your own sheets CodeName
Set rng = .SpecialCells(xlCellTypeConstants, 1)
Set rng = rng.Areas(rng.Areas.Count)
lr = rng.Cells(rng.Cells.Count).Row
End With
End Sub
如何对错误消息进行单元测试?
这是一个测试模板:
public IHttpActionResult Work()
{
try
{
this.Service.DoWork();
return this.Ok();
}
catch (SomeException)
{
return this.Content(HttpStatusCode.Conflict, new { Message = "The message" });
}
}
答案 0 :(得分:2)
您快到了。
您需要将结果转换为ApiController返回的实际类型,并提取期望的数据。
[Test]
public void Work_Conflict()
{
this.Service.Setup(x => x.DoWork()).Throws<SomeException>();
IHttpActionResult result = this.MyController.Work();
var objectResult = result as ObjectResult;
Assert.IsNotNull(objectResult);
dynamic model = objectResult.Value;
string actual = (string)model.Message;
string expected = "The message";
Assert.AreEqual(expected, actual);
}
答案 1 :(得分:-2)
尝试一下: BadRequestObjectResult来自Microsoft.AspNetCore.Mvc命名空间
public void Work_Conflict()
{
//Arrange
this.Service.Setup(x => x.DoWork()).Throws<SomeException>();
using (var controller = new MyController()) ;
//Act
var result = MyController.Work();
var badRequest = result as BadRequestObjectResult;
//Assert
var conflictCode = 0;
Assert.AreEqual(conflictCode, badRequest.StatusCode);
Assert.AreEqual("The message", badRequest.Value);
}