簡體   English   中英

BrowserStack restSharp cURL PUT請求轉換

[英]Browserstack restSharp cURL PUT request conversion

我正在嘗試使用restSharp將以下cURL命令轉換為C#,以便可以標記自動或未通過的Browserstack測試。

curl -u "user:password" -X PUT -H "Content-Type: application/json" -d "{\"status\":\"<new-status>\", \"reason\":\"<reason text>\"}" https://www.browserstack.com/automate/sessions/<session-id>.json

請注意,我是C#的新手,我有以下代碼,當前返回一個空的json響應,我知道我在正確的路徑上,因為將請求方法更改為POST會返回會話/測試的詳細信息(按預期):

    private string markTestPassedorFail(string sesID)

    {
        var Client = new RestClient();
        var Request = new RestRequest();
        string sResponse = "";  
        Client.BaseUrl = new Uri(CapConf.BROWSERSTACK_SESSIONS_URL);
        Client.Authenticator = new HttpBasicAuthenticator(CapConf.BROWSERSTACK_USER_NAME, CapConf.BROWSERSTACK_KEY_PASS);
        Request.Resource = sesID + ".json";
        Request.Method = Method.PUT;
        Request.AddHeader("Content-Type", "application/json");
        Request.AddJsonBody("{\"status\":\"failed\", \"reason\":\"failed\"}");
        try
        {

            IRestResponse response = Client.Execute(Request);
            sResponse = response.Content;

        }
        catch (Exception ex)
        {
            Console.WriteLine("Error Marking Test Passed or Fail : \n" +  ex.Message); 
        }

        return sResponse;
    }

您是否嘗試過在其文檔中共享的示例代碼片段-https: //www.browserstack.com/automate/c-sharp

我只是在那里拉起了代碼片段,並且能夠設置示例測試運行,獲取會話ID並隨后通過REST API更新會話狀態。

  1. 樣本測試-https://www.browserstack.com/automate/c-sharp#getting-started
  2. 會話ID- https://www.browserstack.com/automate/c-sharp#session-id
  3. 通過REST API更新會話狀態-https: //www.browserstack.com/automate/c-sharp#rest-api

請參閱以下要點: https : //gist.github.com/ashwingonsalves/56d7724671054bf623081bdcb30d40b8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM