2 Replies Latest reply on Nov 10, 2010 8:58 AM by Edson Alves Pereira

    SeamTest - how to simulate a tabPanel´s click?

    Edson Alves Pereira Newbie

      Hello folks, i´d like to known how can i simulate a tabPanel´s click with SeamTest?


        • 1. Re: SeamTest - how to simulate a tabPanel´s click?
          Todd Morrison Newbie
          I would suggest two approaches:
          (1) Interact with components from FacesRequest as you do in EL

          In the SeamTest, create a FacesRequest that references the intended view id.

          public void callActionStuff() throws Exception {
          new FacesRequest("/theView.xhtml") {
          protected void invokeApplication() {
          // Call your components and hit the methods you are binding to via Action attribute on your tabPanel

          // test app state

          You can work against all of the seam contexts as if you are really running in the Application Container. But, as a warning, get to know the SeamTest abstract really well; I rarely find its default behavior acceptable for view testing.

          Notice that the FacesRequest is a delegate that you must call .Run() at the end. This means in a given test you can make multiple requests. This is very helpful for Workflow transactions, and views that interact with Seam via Remoting or DWR.

          (2) Web Driver

          This allows you to do actual view testing against the dom. You can run the Selenium tests against support browsers by hosting on a VM of your choice.

          We use this and, although it is a pain to configure, the tests can be used along-side the BootStrapped Seam test framework, which is super cool.

          Hope that helps.