首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法断言是否存在使用Selenium/Java的文本

无法断言是否存在使用Selenium/Java的文本
EN

Stack Overflow用户
提问于 2018-06-28 01:02:03
回答 1查看 219关注 0票数 1

我试图通过从PDF中提取文本来断言PDF,然后检查我想要的文本是否存在于所提取的文本中。

代码正确地提取PDF。问题是,不管PDF提取的文本是否包含我的文本,断言都会传递。

我不知道为什么会失败。

代码语言:javascript
运行
复制
  public static boolean verifyPDFContent(String reqTextInPDF) throws IOException{

        PDDocument doc = PDDocument.load(new File("User/download/test.pdf"));
        PDFTextStripper pdfStripper = new PDFTextStripper();
        String text = pdfStripper.getText(doc);
        doc.close();
        System.out.println(text);
        Assert.assertTrue (text.equals (reqTextInPDF));
        return text.contains(reqTextInPDF);

    }

我要求它通过:

代码语言:javascript
运行
复制
@Then("^I should verify$")
    public void iShouldVerify() throws Throwable {
        export_inspections.verifyPDFContent("z" );
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-28 07:38:23

你可以这样做:

代码语言:javascript
运行
复制
String pdf = "some text contains z inside";
String pdf2 = "some text not contains inside";
System.out.println(pdf.contains("z")); // returns true
System.out.println(pdf2.contains("z")); // returns false

所以,您所需要的就是断言语句是否返回如下所示的true:

代码语言:javascript
运行
复制
Assert.assertTrue("The pdf doesn't contain needed text", text.contains(reqTextInPDF));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51073324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档