<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    FYI, after some consultation with Chris, we decided to implement
    Mediawiki API setup steps in the MobileFrontEnd repo first, so all
    the bits now live in this commit[1]<br>
    <br>
    As things stand now, only wiki articles are being created via the
    API before each test Scenario is run, but code for user account
    creation is part of that commit as well (although that method
    doesn't currently get invoked).<br>
    <br>
    So if this solution seems workable to all concerned, it will
    accomplish the goal of allowing each browser test to create whatever
    wiki articles it needs to satisfy test assertions, and we can easily
    expand the scope later to also allow each browser test to create
    user logins as needed. <br>
    <br>
    - Jeff<br>
    <br>
    <br>
    [1] <a class="moz-txt-link-freetext" href="https://gerrit.wikimedia.org/r/#/c/106548/">https://gerrit.wikimedia.org/r/#/c/106548/</a><br>
    <br>
    <br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 1/7/14, 8:26 AM, Chris McMahon
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAJohBHQ4NgxibSLW-A9PChnde7J2xGus4X9tu1xBL92Cu2VYkQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>I'm Ccing the QA mail list, this might be the place for
          this discussion. </div>
        <br>
        <div>What you're talking about is often called "hermetic" test
          environments.  Where at run time a test environment is created
          sufficient to support the tests being run.  Right now we're
          thinking about this in two different ways: </div>
        <div><br>
        </div>
        <div>One is, as you mentioned, creating a set of tests that are
          intended to run in a bare wiki with no test data.  We're
          identifying these tests now in order to create a PhantomJS
          smoke test suite. </div>
        <div><br>
        </div>
        <div>We are also exploring using the Mediawiki API to create or
          update pages and users at run time to avoid the overhead of
          doing it through the UI.  I've had Jeff Hall start looking
          into this:  <a moz-do-not-send="true"
            href="https://gerrit.wikimedia.org/r/#/c/105835/">https://gerrit.wikimedia.org/r/#/c/105835/</a> .
            </div>
        <div><br>
        </div>
        <div>Another avenue we have discussed is to use Vagrant.  I
          haven't gone very far down that path, but it should be
          possible to share a Vagrant image with essential test data on
          it. </div>
        <div><br>
        </div>
        <div>As to why we don't have this today, my first priority was
          to create a viable *shared* test environment with shared test
          data.  We needed beta labs and test2wiki working properly to
          support fast deployments and to avoid the "works on my
          machine" problems.  Now that beta and test2 are functioning
          reasonably well, we can turn attention to the hermetic test
          environments.  </div>
        <div><br>
        </div>
        <div>-Chris </div>
        <div class="gmail_extra"><br>
          <br>
          <div class="gmail_quote">On Mon, Jan 6, 2014 at 6:43 PM, Jon
            Robson <span dir="ltr"><<a moz-do-not-send="true"
                href="mailto:jrobson@wikimedia.org" target="_blank">jrobson@wikimedia.org</a>></span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">The best
              way to get round this would be to setup a new database
              every<br>
              time the tests begin and remove it at the end of the
              tests.<br>
              Somewhat related to <a moz-do-not-send="true"
                href="https://bugzilla.wikimedia.org/show_bug.cgi?id=56057"
                target="_blank">https://bugzilla.wikimedia.org/show_bug.cgi?id=56057</a><br>
              <br>
              Chris any ideas?<br>
              <br>
              <br>
              On Mon, Jan 6, 2014 at 5:33 PM, Ryan Kaldari <<a
                moz-do-not-send="true"
                href="mailto:rkaldari@wikimedia.org">rkaldari@wikimedia.org</a>>
              wrote:<br>
              > Right now, we have a lot of important features that
              don't have any<br>
              > acceptance tests because in order to test them you
              have to create a new<br>
              > account. This would result in thousands of bogus
              accounts being created on<br>
              > all the wikis we test on. Does anyone have any ideas
              about how we could<br>
              > solve this problem?<br>
              ><br>
              > Ryan Kaldari<br>
            </blockquote>
          </div>
          <br>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
QA mailing list
<a class="moz-txt-link-abbreviated" href="mailto:QA@lists.wikimedia.org">QA@lists.wikimedia.org</a>
<a class="moz-txt-link-freetext" href="https://lists.wikimedia.org/mailman/listinfo/qa">https://lists.wikimedia.org/mailman/listinfo/qa</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>