0
나머지 API를 사용하여 ALM 인스턴스에 로그인/인증 할 수 있었지만 지금은 새 테스트 세트를 작성하기 위해 무엇을해야하는지 혼란 스럽습니다. . 는 :ALM 나머지 API (C#) : 테스트 세트 생성
private string CreateTestSetURL = "{0}rest/domains/{1}/projects/{2}/test-sets";
// Parameters : 0 = Open Date, 1 = Description, 2 = parent, 3 = Name.
private const string TestSetsXML = "<Entity Type=\"test-set\">" +
"<Fields>" +
"<Field Name=\"status\"><Value>Open</Value></Field>" +
"<Field Name=\"open-date\"><Value>{0}</Value></Field>" +
"<Field Name=\"subtype-id\"><Value>hp.pc.test-set.performance</Value></Field>" +
"<Field Name=\"description\"><Value>{1}</Value></Field>" +
"<Field Name=\"parent-id\"><Value>{2}</Value></Field>" +
"<Field Name=\"name\"><Value>{3}</Value></Field>" +
"</Fields>" +
"</Entity>";
string requestURL = String.Format(TestSetsURL, baseRequestURL, qcSettings.QCDomain, qcSettings.QCProject);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(requestURL));
string xml = String.Format(TestSetsXML, "2015-12-17", "test please ignore", parent, "TestPleaseIgnore");
byte[] Requestbytes = Encoding.UTF8.GetBytes(xml);
//request.
request.CookieContainer = authenticationCookieContainer;
request.Method = "POST";
request.ContentType = "application/xml";
request.Accept = "application/xml";
request.ContentLength = Requestbytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(Requestbytes, 0, Requestbytes.Length);
requestStream.Close();
var response = request.GetResponse();
var responseStream = response.GetResponseStream();
결과는이 에러는 "원격 서버에서 오류를 반환. (400) 잘못된 요청"
은 아마 몇 가지 질문은 :
- 는이 게시물을해야 하는가? - documentation here에 따라야합니다.
- 형식이 맞습니까?
UPDATE : 내가 바니스의 제안을 시도,하지만 난 여전히 (400) 잘못된 요청을 얻고있다.
변경 사항이 업데이트되었습니다.
시험은 정보가없는 쿼리 문자열에, 당신의 요구에 신체의 일부가되어야합니다 설정합니다. – Barney
@Barney 당신이 통과 한 XML이어야한다는 것을 의미합니까? –
변수 parent를 어딘가에 초기화 했습니까? – Barney