작업을 위해 작성한 자동화 이외에 실제로 XML
을 사용할 필요가 없었습니다. 어쩌면 내가 잘못했는지 아니면 그냥 .. 운이 좋았을 까?XML 구문 분석 및 자동화
즉, XML
파일을 구문 분석 할 때 몇 가지 문제가 있습니다. XML
의 구조는 다음과 같습니다.
// I have removed the username and passwords as they are sensitive
<?xml version="1.0" encoding="UTF-8"?>
<Logins>
<Login>
<Username>xxx</Username>
<Password>xxx</Password>
</Login>
...
</Logins>
충분히 간단합니다. 내가해야 할 일은 각 노드에서 사용자 이름과 암호를 가져 와서 두 개의 개별 변수에 넣는 것입니다. 그 다음에는 3 가지 요소 (사용자 이름, 비밀번호, 제출 버튼)를 찾은 다음 자동으로 로그인하여 사용자가 로그인하는 자동화 된 코드가 있습니다. 그런 다음 이미지를 확인하고 브라우저를 종료하는 스무스 테스트를 수행합니다. 그 코드는 여기에 있습니다 : 당신은 확인 할 수 있습니다으로
chromeDriver.FindElement(By.Id(@"userNameInput")).SendKeys(userName.ToString());
chromeDriver.FindElement(By.Id(@"passwordInput")).SendKeys(passWord.ToString());
chromeDriver.FindElement(By.Id(@"submitButton")).Click();
Thread.Sleep(10);
bool isVisible = chromeDriver.FindElement(By.Id(@"logoImage")).Displayed;
, 내가 사용하는 데 필요한 변수는, userName
및 passWord
. 코드 내가 (다른 시도 중), 아무 소용이, 시도는 여기에 있습니다 :
System.Linq.Enumerable + WhereSelectEnumerableIterator`2 [시스템 :
XDocument rootElement = XDocument.Load(@"C:\Test Data.xml"); IEnumerable<string> textSegment = from segment in rootElement.Descendants("Username") select (string)segment; var userName = textSegment;
내가 얻고 출력은 이것이다 .Xml.Linq.XElement, System.String]
이는 사용자 이름 필드에 쓰거나 보내지는 리터럴 출력이며,이 시점에서 내가 잘못하고있는 부분을 완전히 잃어 버렸습니다. . XML
을 구문 분석 할 때 나는 잘못된 것을하고 있음을 압니다.
** var userName = textSegment.ToList() ** 필요한 것을 얻으시겠습니까? –