How to use hamcrest matchers in Testng assertEquals?











up vote
0
down vote

favorite












I am currently using testng assertEquals and softassertion, No I have a scenario of validation wher the actual is a complete String and the expected is a substring.



Code



assertThat("This is actual string", containsString("expected"));


Error message




java.lang.NoSuchMethodError:

org.hamcrest.Matcher.describeMismatch(Ljava/lang/Object;Lorg/hamcrest/Description;)V




Code



softAssert.assertEquals("This is actual string", containsString("actual"));


Error message




java.lang.AssertionError:

The following asserts failed: expected [a string containing "actual"] but found [This is actual string] Expected :a string containing "actual" Actual :This is actual string











share|improve this question




























    up vote
    0
    down vote

    favorite












    I am currently using testng assertEquals and softassertion, No I have a scenario of validation wher the actual is a complete String and the expected is a substring.



    Code



    assertThat("This is actual string", containsString("expected"));


    Error message




    java.lang.NoSuchMethodError:

    org.hamcrest.Matcher.describeMismatch(Ljava/lang/Object;Lorg/hamcrest/Description;)V




    Code



    softAssert.assertEquals("This is actual string", containsString("actual"));


    Error message




    java.lang.AssertionError:

    The following asserts failed: expected [a string containing "actual"] but found [This is actual string] Expected :a string containing "actual" Actual :This is actual string











    share|improve this question


























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I am currently using testng assertEquals and softassertion, No I have a scenario of validation wher the actual is a complete String and the expected is a substring.



      Code



      assertThat("This is actual string", containsString("expected"));


      Error message




      java.lang.NoSuchMethodError:

      org.hamcrest.Matcher.describeMismatch(Ljava/lang/Object;Lorg/hamcrest/Description;)V




      Code



      softAssert.assertEquals("This is actual string", containsString("actual"));


      Error message




      java.lang.AssertionError:

      The following asserts failed: expected [a string containing "actual"] but found [This is actual string] Expected :a string containing "actual" Actual :This is actual string











      share|improve this question















      I am currently using testng assertEquals and softassertion, No I have a scenario of validation wher the actual is a complete String and the expected is a substring.



      Code



      assertThat("This is actual string", containsString("expected"));


      Error message




      java.lang.NoSuchMethodError:

      org.hamcrest.Matcher.describeMismatch(Ljava/lang/Object;Lorg/hamcrest/Description;)V




      Code



      softAssert.assertEquals("This is actual string", containsString("actual"));


      Error message




      java.lang.AssertionError:

      The following asserts failed: expected [a string containing "actual"] but found [This is actual string] Expected :a string containing "actual" Actual :This is actual string








      java unit-testing testing testng hamcrest






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 22 at 13:08









      deHaar

      2,15631427




      2,15631427










      asked Nov 22 at 12:37









      Bharathan Kumaran

      605




      605
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          You can't do it with assertEquals, You can do it using assertTrue. Use below code,



          String actual="This is actual string";
          assertTrue(actual.contains("actual"));





          share|improve this answer





















          • Thanks for input, I tried the same,If the assertion fails, the assertion error says expected true, actual as fasle. The general assertion error message will be like Expected:actual Actual:This is actual string
            – Bharathan Kumaran
            Nov 23 at 7:32












          • @BharathanKumaran Couldn't understand the comment. Does your problem solved?
            – Chintamani Manjare
            Nov 23 at 8:42










          • I am already using the above one, the downside of the above one is if the contains fails, the assertion error log will say expected true, actual false, Where the the hamcrest assertion will say expected "expected string" actual This is actual string,
            – Bharathan Kumaran
            Nov 29 at 1:46













          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53431210%2fhow-to-use-hamcrest-matchers-in-testng-assertequals%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          0
          down vote













          You can't do it with assertEquals, You can do it using assertTrue. Use below code,



          String actual="This is actual string";
          assertTrue(actual.contains("actual"));





          share|improve this answer





















          • Thanks for input, I tried the same,If the assertion fails, the assertion error says expected true, actual as fasle. The general assertion error message will be like Expected:actual Actual:This is actual string
            – Bharathan Kumaran
            Nov 23 at 7:32












          • @BharathanKumaran Couldn't understand the comment. Does your problem solved?
            – Chintamani Manjare
            Nov 23 at 8:42










          • I am already using the above one, the downside of the above one is if the contains fails, the assertion error log will say expected true, actual false, Where the the hamcrest assertion will say expected "expected string" actual This is actual string,
            – Bharathan Kumaran
            Nov 29 at 1:46

















          up vote
          0
          down vote













          You can't do it with assertEquals, You can do it using assertTrue. Use below code,



          String actual="This is actual string";
          assertTrue(actual.contains("actual"));





          share|improve this answer





















          • Thanks for input, I tried the same,If the assertion fails, the assertion error says expected true, actual as fasle. The general assertion error message will be like Expected:actual Actual:This is actual string
            – Bharathan Kumaran
            Nov 23 at 7:32












          • @BharathanKumaran Couldn't understand the comment. Does your problem solved?
            – Chintamani Manjare
            Nov 23 at 8:42










          • I am already using the above one, the downside of the above one is if the contains fails, the assertion error log will say expected true, actual false, Where the the hamcrest assertion will say expected "expected string" actual This is actual string,
            – Bharathan Kumaran
            Nov 29 at 1:46















          up vote
          0
          down vote










          up vote
          0
          down vote









          You can't do it with assertEquals, You can do it using assertTrue. Use below code,



          String actual="This is actual string";
          assertTrue(actual.contains("actual"));





          share|improve this answer












          You can't do it with assertEquals, You can do it using assertTrue. Use below code,



          String actual="This is actual string";
          assertTrue(actual.contains("actual"));






          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 22 at 14:00









          Chintamani Manjare

          4701317




          4701317












          • Thanks for input, I tried the same,If the assertion fails, the assertion error says expected true, actual as fasle. The general assertion error message will be like Expected:actual Actual:This is actual string
            – Bharathan Kumaran
            Nov 23 at 7:32












          • @BharathanKumaran Couldn't understand the comment. Does your problem solved?
            – Chintamani Manjare
            Nov 23 at 8:42










          • I am already using the above one, the downside of the above one is if the contains fails, the assertion error log will say expected true, actual false, Where the the hamcrest assertion will say expected "expected string" actual This is actual string,
            – Bharathan Kumaran
            Nov 29 at 1:46




















          • Thanks for input, I tried the same,If the assertion fails, the assertion error says expected true, actual as fasle. The general assertion error message will be like Expected:actual Actual:This is actual string
            – Bharathan Kumaran
            Nov 23 at 7:32












          • @BharathanKumaran Couldn't understand the comment. Does your problem solved?
            – Chintamani Manjare
            Nov 23 at 8:42










          • I am already using the above one, the downside of the above one is if the contains fails, the assertion error log will say expected true, actual false, Where the the hamcrest assertion will say expected "expected string" actual This is actual string,
            – Bharathan Kumaran
            Nov 29 at 1:46


















          Thanks for input, I tried the same,If the assertion fails, the assertion error says expected true, actual as fasle. The general assertion error message will be like Expected:actual Actual:This is actual string
          – Bharathan Kumaran
          Nov 23 at 7:32






          Thanks for input, I tried the same,If the assertion fails, the assertion error says expected true, actual as fasle. The general assertion error message will be like Expected:actual Actual:This is actual string
          – Bharathan Kumaran
          Nov 23 at 7:32














          @BharathanKumaran Couldn't understand the comment. Does your problem solved?
          – Chintamani Manjare
          Nov 23 at 8:42




          @BharathanKumaran Couldn't understand the comment. Does your problem solved?
          – Chintamani Manjare
          Nov 23 at 8:42












          I am already using the above one, the downside of the above one is if the contains fails, the assertion error log will say expected true, actual false, Where the the hamcrest assertion will say expected "expected string" actual This is actual string,
          – Bharathan Kumaran
          Nov 29 at 1:46






          I am already using the above one, the downside of the above one is if the contains fails, the assertion error log will say expected true, actual false, Where the the hamcrest assertion will say expected "expected string" actual This is actual string,
          – Bharathan Kumaran
          Nov 29 at 1:46




















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53431210%2fhow-to-use-hamcrest-matchers-in-testng-assertequals%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          A CLEAN and SIMPLE way to add appendices to Table of Contents and bookmarks

          Calculate evaluation metrics using cross_val_predict sklearn

          Insert data from modal to MySQL (multiple modal on website)