Web パフォーマンスとロード テスト プロジェクトを使用して、Visual Studio 2012 から WCF サービスをロード テストしようとしています。以下に示すように単体テスト ファイルを追加し、負荷テストで実行します。私のテストオブジェクトに画像バイト[]を設定することを除いて、すべてうまくいくようです。
単体テスト
[TestMethod, TestCategory("WCF - Primary Tests")]
public void EventItem_Insert()
{
//Arrange
var service = new EventServiceReference.ServiceContractClient();
var item = UnitTestHelpers.EventItemFactory(Guid.NewGuid(), Guid.NewGuid());
Debug.WriteLine(item.Data.Length.ToString());
//Act
Guid pk = service.SaveEventItem(item);
//Assert
Assert.AreNotEqual(Guid.Empty, pk, "The key returned is empty");
}
EventItemFactory から画像読み込みルーチンを呼び出すスニペット。
EventItem.Data = (byte[])LoadTestImageFromProject();
問題のあるコード。これは、テスト エクスプローラーから単体テストを実行すると機能しますが、ロード テストから呼び出すと無効なパラメーターをスローします。
public static byte[] LoadTestImageFromProject()
{
FileInfo fileInfo = new FileInfo(System.Reflection.Assembly.GetExecutingAssembly().Location);
string file = Path.Combine(fileInfo.DirectoryName, @"Assets\bg.JPG");
Bitmap bmp = new Bitmap(file);
ImageConverter converter = new ImageConverter();
byte[] byteArray = (byte[])converter.ConvertTo(bmp, typeof(byte[]));
return byteArray;
}
助けてくれてありがとう。