2012-07-11 2 views
1

xpath 추출기를 사용하여 응답 데이터에서 양식 속성 값을 검색하고 있습니다. (substring-after(//form[@id='headerForm']/@action,'/dashboard.xhtml?')) 엔티티 "I"에 대한 참조를 처리하는 동안의 SAXException : 그러나,이 응답 데이터는 다른 데이터 스트링 "C & I"사이에서 포함하고,이 JMeter XPath 추출기 SAXException

jmeter.extractor.XPathExtractor 다음의 SAXException

일으키는 ';'로 끝나야합니다. 구분 기호.

이 데이터는 데이터베이스에서 얻은 데이터이므로 제어 할 수 없습니다. 나는 "Tidy (tolerant parser) 사용"옵션을 검사하려고 시도했다. 즉, 다음과 같은 경고/오류

ERROR 결과 - jmeter.util.XPathUtil : TidyException : 라인 35 열 (31) - 경고 : 트리밍 빈 < 사업부 >

라인 (35) 응답이 같다의 다음과 같습니다 :

 
`<div style="clear: both;"></div>` 

나에 대한 추가 처리에는 속성 값 추출이 필수적입니다.

답변

1

원본 문서에있는 빗나간 &은 XML에서 유효하지 않습니다. 는 XML 스펙에서 (강조 광산)

앰퍼샌드 문자 (&)와 마크 업 구분 기호로 사용하는 경우에만 그대로의 형태로 나타날 수 있습니다 왼쪽 꺾쇠 괄호 (<), 또는 주석 내에서 처리 명령 또는 CDATA 섹션. 그들은 또한 내부 엔터티의 리터럴 엔터티 값 내에서 선언 내에 있습니다. "4.3.2 잘 형성된 파싱 된 엔티티"를 참조하십시오. 다른 곳에서 이 필요하면 숫자 참조 또는 문자열 "& amp;"을 사용하여 이스케이프해야합니다. 및 "& lt;"입니다.

구문 분석기는 &을 세미콜론으로 끝나기를 기대하는 엔티티 참조의 시작으로 해석합니다.

출처 : 관련이없는 당신은 포함 시켰습니다 오류가 있음을

주 (거의 확실). Tidy는 div에 콘텐츠가 없다는 것을 지적하고 있습니다 (즉, 비어 있음).

5

해결 방법은 모두 빠르며 더러울 수도 있지만 한 가지 문제에 대한 해결책이 항상 있습니다.

xpath 추출기 대신 HTML을 구문 분석하려면 jsoup을 사용하는 것이 좋습니다. 나는 당신이 특정 폼의 액션 속성을 추출하려고한다고 가정하고있다.>이 당신의 JMETER_HOME\lib

단계에 jsoup-1.6.3.jar 또는 다른 버전의 추가 - - 단계 1

> 추가 BeanShell PostProcessor 당신의 Sampler HTTP 또는 기타

3 단계 -> 스크립트 큰 상자에 붙여이 코드 :

HTML 선택기는 jquery 기반입니다. 그래서 꽤 좋은 깔끔한 것들을 할 수 있습니다. 어쨌든 ${action} 변수가 있어야 테스트 할 수 있습니다.

업데이트

그래서 당신은 내가 여기 Html Extractor라는 JMeter를 포스트 프로세서를 생성 한 코드에 얽힌되지 않는이 GitHub의 URL이 있습니다 :

https://github.com/c0mrade/Html-Extractor

+0

개미는 주셔서 감사합니다 응답. 그러나, 내가 prev.getRespon을하고 .... 내가 얻을 html 현재 요청 (흐름이 index.xhtml -> dashboard.xhtml)되지 않습니다. dashboard.xhtml에서 데이터를 추출해야합니다. dashboard.xhtml에 해당하는 두 번째 HttpREquest 아래에 JSoup 코드를 추가했습니다. 그러나, 내가 받고있는 HTML은 index.xhtml에 해당합니다. curr.getREsponse를 시도했지만 ... 작동하지 않습니다. JSoup 웹 사이트에서 많은 도움을 얻을 수 없었습니다. 이 문제를 해결할 수 있도록 도와 주시겠습니까? Thx, Karthik – Karthik

+0

dashboard.xhtml이라는 파일을 읽고 계십니까? 질문에 대한 추가 정보 (예 : 적절한 구조, 테스트 흐름, 추가 정보를 제공하는 스크린 샷)를 업데이트 할 수 있습니까? 모든 것이 한 문장에 들어갈 때를 이해하는 것은 어렵습니다. – ant