亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

c# mstest測試查詢數據庫在讀取配置時拋出FileNotFoundException的方法

c# mstest測試查詢數據庫在讀取配置時拋出FileNotFoundException的方法

C#
婷婷同學_ 2022-10-15 15:26:53
我想創建一個測試項目并導入一個解決方案(解決方案 A),這樣我就不需要在解決方案中添加一個測試項目。我想將測試項目和其他項目分開,因為我不想讓 SVN 知道我已經創建了它。當我測試通過實體框架從數據庫中查詢數據的方法時。它拋出一個異常:Could not load file or assembly 'System.Configuration.ConfigurationManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=*************'. The system cannot find the file specified.但是我檢查了 Dependencies->SDK->Microsoft.NETCore App(2.1) ,我找到了 System.Configuration.dll。我怎么了?我在堆棧溢出中搜索,并嘗試從解決方案 A 復制配置以測試項目。但它不起作用。
查看完整描述

1 回答

?
明月笑刀無情

TA貢獻1828條經驗 獲得超4個贊

我找到了兩個原因:

  1. 我使用 .net 核心項目(測試項目)來調用標準 .net 框架項目中的方法。

  2. 所有測試項目都需要在 Nuget 中安裝 ConfigurationManager。

====================== 更新我上面的答案 =================

我放棄了使用 mstest 來做這件事。

我找到了另一種方法,但似乎有點愚蠢。我直接在控制器中編寫了測試方法。

首先,聲明一個TestBean。

public TestBean(string name, string suppose, string fact, object msg = null)

{

    this.name = name;

    this.suppose = suppose;

    this.fact = fact;

    pass = suppose == fact;

    if (SHOW_MSG)

        this.msg = msg;

    else

        this.msg = null;

}

在控制器中使用這樣的bean:


[HttpGet]

public string TestAll(){

    JObject obj = (JObject)JsonConvert.DeserializeObject(TestMethod());

    TestBean beans = new TestBean[]{

        new TestBean('TestMethod',true+"",obj+"",obj)

    };

    return JsonConvert.SerializeObject(beans);

}


當我訪問 url localhost:.../TestAll 時,我會得到 json


[

    {

        "pass":true,

        "name":"TestMethod",

        "suppose":"True",

        "fact":"True",

        "msg":"True"

    }

]

老實說,它并不容易使用,尤其是在測試用例頻繁更改的情況下。


查看完整回答
反對 回復 2022-10-15
  • 1 回答
  • 0 關注
  • 183 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號