mardi 30 juin 2015

Installaton error when doing 'make tests' pyjnius in osx 10.9 : Class not found etc

I have these elements installed :
cython v0.20
python v2.7.5
osx 10.9.2
jre 8u45
jdk 8u45
nosetest 1.3.7

i’m trying to install pyjnius on my mac osx 10.9.2 I have python+kivy+cython+jdk+jre installed. Kivy is running properly, now i want to add pyjnius. It's compiled without error, but when doing 'make tests' i got a lot of error. Btw, inside kivy, i can import jnius only if i'm in the pyjnius installation folder. If i'm in other folder, i will got error msg "ImportError: No module named jnius". Below are the steps taken from the setup until make tests.

so my questions are :
1. how to fix the make tests error ?
2. In Kivy, How can i import the jnius /pyjnius without having to be in the pyjnius folder? Anyone got the solution ?

Here's the output of the error. The setup and make give no error, but make tests produce a lot of error.

$ sudo python setup.py install

14 warnings generated.
cc -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -Wl,-F. build/temp.macosx-10.9-intel-2.7/jnius/jnius.o -o build/lib.macosx-10.9-intel-2.7/jnius/jnius.so -framework JavaVM
running install_lib
copying build/lib.macosx-10.9-intel-2.7/jnius/jnius.so -> /Library/Python/2.7/site-packages/jnius
running install_egg_info
Removing /Library/Python/2.7/site-packages/jnius-1.1_dev-py2.7.egg-info
Writing /Library/Python/2.7/site-packages/jnius-1.1_dev-py2.7.egg-info

$ sudo make

14 warnings generated.
cc -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -Wl,-F. -g build/temp.macosx-10.9-intel-2.7/jnius/jnius.o -o /Users/andi/Documents/temp/pyjnius/jnius/jnius.so -framework JavaVM

$ sudo make tests
i got a lot of error :


JavaException: Class not found 'org/jnius/BasicsTest'

JavaException: JVM exception occurred: org/jnius/BasicsTest : Unsupported major.minor version 52.0

JavaException: Class not found 'org/jnius/BasicsTest'

JavaException: Class not found 'org/jnius/BasicsTest'

JavaException: Class not found 'org/jnius/BasicsTest'

JavaException: JVM exception occurred: org/jnius/NativeInvocationHandler

JavaException: Unable to find the class org/jnius/HelloWorld


Ran 47 tests in 0.349s

FAILED (errors=37) make: *** [tests] Error 1

Difference between these two methods of testing

For testing a Python library, I can do either

python setup.py install
python setup.py test

or

python setup.py build
python setup.py test

I prefer doing it the latter way. What things would I be missing to not go for the first?

NOTE : I'm not choosing first because in that case I think something at permission level goes wrong over Travis-CI. This is the error log

======================================================================
ERROR: Failure: OSError ([Errno 20] Not a directory: '/home/travis/virtualenv/python2.7.9/lib/python2.7/site-packages/networkx_metis-1.0-py2.7-linux-x86_64.egg/networkx')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/virtualenv/python2.7.9/lib/python2.7/site-packages/nose/loader.py", line 414, in loadTestsFromName
    addr.filename, addr.module)
  File "/home/travis/virtualenv/python2.7.9/lib/python2.7/site-packages/nose/importer.py", line 47, in importFromPath
    return self.importFromDir(dir_path, fqname)
  File "/home/travis/virtualenv/python2.7.9/lib/python2.7/site-packages/nose/importer.py", line 86, in importFromDir
    if (self.sameModule(old, filename)
  File "/home/travis/virtualenv/python2.7.9/lib/python2.7/site-packages/nose/importer.py", line 131, in sameModule
    if _samefile(mod_path, new_path):
  File "/home/travis/virtualenv/python2.7.9/lib/python2.7/posixpath.py", line 162, in samefile
    s1 = os.stat(f1)
OSError: [Errno 20] Not a directory: '/home/travis/virtualenv/python2.7.9/lib/python2.7/site-packages/networkx_metis-1.0-py2.7-linux-x86_64.egg/networkx'
----------------------------------------------------------------------
Ran 1 test in 0.314s
FAILED (errors=1)
The command "python setup.py test" exited with 1

Is this an alternative to the walking 1's algorithm?

Ok, this is a long one, so please bear with me. The question is in the last paragraph.

My application reads boolean data from 100+ discrete inputs and packs them into a bunch of integers, which are later output over serial. I'm in the testing phase of development, and need to check that each input gets placed into the correct bit of the output. My first instinct was to use the walking 1's algorithm. This would generate several hundred test cases though, which takes time and effort to create, maintain, review, etc. So I've been encouraged to reduce the number of tests to what I feel comfortable with, even if it means some cases wouldn't get covered (presumably they'd be covered by tests by other teams). I don't feel comfortable not thoroughly testing my code, but I recognize the desire to reduce the number of test cases if possible. The walking 1's test would produce N test cases, where N is the number of inputs.

After thinking about it for a while, I came up with the following 3 tests. If any one of them fail, there is something wrong with the input conversion.

  1. Odds test - Set every odd input to "on", yielding an alternating bit pattern in the output.

  2. Evens test - Set every even input to "on", yielding an alternating bit pattern in the output.

  3. Walking 3's test - This is my own name for the test, due to its similarity to the walking 1's test. Set the first two inputs to "on". Then set the next two inputs to "on", and so on, until there are 0 or 1 inputs left.

For each test, the output is compared to the input to see if it matches. If they don't match, XOR can be used to get the erroneous bits.

The idea is that the odds and even tests prove that the bits are independent of their neighboring bits. If 10101 is the input (odds test), an output of 10101 indicates that the even bits are not set (are independent of the odd bits) when an odd bit is set. Same goes for the even bits. That reduces the set of possible dependent bits by half. Then by testing the 3's, we can prove independence of the rest of the bits. For example, if input is 00011 and output is 00011, we know from the odds/evens test that bit 1 is independent of bit 0, and now we know from the 3's test that bits 0 and 1 are independent of the rest of the bits, otherwise at least one of those bits would be 1. Continuing the example, if input 00011 gives us 00111 for output, we know via XOR that bit 2 is dependent on bit 0 (remember that the evens and odds test passed, so bit 0 is the only possible source of dependence). Or if input 00011 gives us 00110 for output, we know again via XOR that once again bits 0 and 2 are the problem (in this case, they appear to be swapped).

An example of this for a 5-bit sequence is below (in my application it's actually a series of 19-bit sequences). These examples consider the case where two bits are swapped. Bits that are stuck on or off can be detected solely by the odd and even tests.

Compared to the walking 1's test, these 3 tests yield floor(N/2) + 2 test cases. But do these make a valid replacement for the walking 1's test? My example seems to indicate so (at least for my purposes), but I'm not sure. I would've expected to see this technique elsewhere, but I haven't found it. Of course, I don't know what name I should be looking for.

Swap bits 0 and 1
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 10110  | Yes       |
| 01010 | evens   | 01001  | Yes       |
| 00011 | 3's (1) | 00011  | No        |
| 01100 | 3's (2) | 01100  | No        |


Swap bits 0 and 2
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 10101  | No        |
| 01010 | evens   | 01010  | No        |
| 00011 | 3's (1) | 00110  | Yes       |
| 01100 | 3's (2) | 01100  | No        |


Swap bits 0 and 3
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 11100  | Yes       |
| 01010 | evens   | 00011  | Yes       |
| 00011 | 3's (1) | 01010  | Yes       |
| 01100 | 3's (2) | 00101  | Yes       |


Swap bits 0 and 4
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 10101  | No        |
| 01010 | evens   | 01010  | No        |
| 00011 | 3's (1) | 10010  | Yes       |
| 01100 | 3's (2) | 01100  | No        |


Swap bits 1 and 2
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 10011  | Yes       |
| 01010 | evens   | 01100  | Yes       |
| 00011 | 3's (1) | 00101  | Yes       |
| 01100 | 3's (2) | 01010  | Yes       |


Swap bits 1 and 3
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 10101  | No        |
| 01010 | evens   | 01010  | No        |
| 00011 | 3's (1) | 01001  | Yes       |
| 01100 | 3's (2) | 00110  | Yes       |


Swap bits 1 and 4
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 00111  | Yes       |
| 01010 | evens   | 11000  | Yes       |
| 00011 | 3's (1) | 10001  | Yes       |
| 01100 | 3's (2) | 01100  | No        |


Swap bits 2 and 3
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 11001  | Yes       |
| 01010 | evens   | 00110  | Yes       |
| 00011 | 3's (1) | 00011  | No        |
| 01100 | 3's (2) | 01100  | No        |


Swap bits 2 and 4
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 10101  | No        |
| 01010 | evens   | 01010  | No        |
| 00011 | 3's (1) | 00011  | No        |
| 01100 | 3's (2) | 11000  | Yes       |


Swap bits 3 and 4
| Input | Method  | Output | Detected? |
|-------|---------|--------|-----------|
| 10101 | odds    | 01101  | Yes       |
| 01010 | evens   | 10010  | Yes       |
| 00011 | 3's (1) | 00011  | No        |
| 01100 | 3's (2) | 10100  | Yes       |

Test: wait for event listeners to finish

I would like to know how to wait for event listeners to finish before making an assertion in a test.

I am testing a function ItemFetcher.fetch() that parses rss feeds and creates a document. It uses node-feedparser in this manner:

feedparser.on('readable', function() {
  // read the stream and write to the database
});

In my test suite using Mocha, Chai, and Velocity, I am testing that a document is created after calling ItemFetcher.fetch().

ItemFetcher.fetch();

expect(Items.find().count()).to.equal(1);

Somehow, this fails because the actual value is 0. However, when I add another random code in between, giving a small delay before my assertion, the test passes.

ItemFetcher.fetch();

expect(Something).to.equal(something); // random assertion
expect(Items.find().count()).to.equal(1);

I think there is a race condition in my test because I am using event listener. How can I wait until ItemFetcher.fetch() is done processing the events before my assertion?

I tried to modify the ItemFetcher.fetch() to take a callback, and move my assertion inside the callback and call done() to test async in Mocha, but it did not solve the problem.

Any suggestions?

Is it possible to test after_create method in integration test for rolify gem?

I am using the Rolify gem to give users roles. It seems to work succesfully and I have several tests that pass without problems. However there is one test that doesn't seem to work.

Rolify offers to add after_create, which I added to my User model:

after_create :assign_mod_role

def assign_mod_role
  self.add_role :moderator, self.organization
end

This assigns the moderator role to each user that is created (a user is always created with an association to an organization). This works in development. I have also created an integration test:

test "user signup" do
  log_in_as(@admin)    #@admin of @organization1
  assert_difference 'User.count' do
    post adduser_path, user: { email: "ppppp@pppp.pp",
                               username: "pppppp",
                               password: "pppppp",
                               password_confirmation: "pppppp" }
  end
  testuser = assigns(:user)
  assert_equal testuser.has_role?(:moderator, @organization1), true
end

The last line however fails. Am I doing something wrong or is it not possible to test for the after_create method? Perhaps the way Rolify manages roles does not allow to test for this?

Software lead reaching out

I decided to create a new account because my peers might be watching this discussion, not bad persé but I'd like to keep my struggles under the radar for now.

I'm a software developer with 10+ who has exceeded in the Senior role. I have led developers and small teams and have participated in large development teams as well. Reaching out like this is new for me, I guess you can interpret that as lot of frustration coming out.

My current team consists of 5 developers working for a startup that does product development, tailoring, support and consulting. We have heated discussions about our project methodology and everybody agrees: something needs to change. It takes too long to get things done (e.g. weeks instead of hours). In terms of processes and tools we are on the right track, the real killer is quality and productivity. We have yet to deliver a project on time to satisfaction and budget.

The changes that I suggest however are particularly met with a lot of resistance. I've been patient but the situation is digressing.

I would like to lead this team by example but I need some help. My current objective is to produce a few simple artifacts for the team to debate.

They have already expressed their resentment to the topics I suggest and believe that agile is all about creatively developing a solution on loose specs and using iterations to gain feedback. This is exactly the reason why we needs hours and hours of congregation and we sometimes have more than 6 stakeholders that are part of the development process.

It is my personal and currently sole opinion that we can save a lot of overhead by effectively communicating in a better way: through standardized documentation.

I'm thinking about creating a piece of project reference documentation that contains things like:

  • Functional, technical and user documentation
  • Architecture design, technical design, api's
  • diagrams: architecture, infrastructure, data model, entity relationship model, component model, workflow
  • user stories, use cases, test cases
  • End-user manual

What would you do in this situation? Can you help me in any way? Do you have alternative approaches or any other suggestions? Please help us, this company is falling apart.

How to write up a unit test in Jasmine for a random outcome? (eg Dice Throw)

How would one write up a Jasmine Unit Test, based around a random outcome generator?

For example, how does one write a test around the result of a random dice throw (or colour picker, or weather setting if it were a string)?

The dice code itself is along the lines of:

Dice.prototype.rollDice = function() {
1 + Math.floor(Math.random() * 6);
};

And I am aware that what is written below is incorrrect/ incomplete, I have simply written it as an example of where I am stuck:

it("can generate a random number from the players throw", function() {
var dice = new Dice();
dice.rollDice();
expect(----------------------).toEqual(----------------);
});

I have little experience with Jasmine Unit testing, and would appreciate a demonstration of a complete working example

Many thanks

karma not finding angularjs directive in its own file

In a file dashboard.module.coffee I have the following declaration:

angular
  .module('app.dashboard', [])

In another file, stat.directive.coffee I have the following:

angular.module('app.dashboard')
  .directive('stat', ['$interval', statDirective])

statDirective contains the directive logic. This code works fine in a browser, i.e. the <stat> element works as expected, but the following Jasmine test does not render the element, it's simply an empty string:

describe "Stat", ->
  element = null
  scope = null

  beforeEach module 'app.dashboard'
  beforeEach module 'views/templates/dashboard/stat.html'
  beforeEach inject ($compile, $rootScope) ->
    scope = $rootScope.$new()
    element = $compile('<stat></stat>') scope

  it "contains some html", ->
    scope.$digest()

    expect(element.html()).toEqual('<div>hi</div>')

I've narrowed this down to the module being declared separately from the directive. If instead, the declaration was like this, the directive is found and rendered:

angular.module('app.dashboard', [])
  .directive('stat', ['$interval', statDirective])

Here, the only change is that the module and directive are being declared together, not in two files.

This looks to be an issue specifically with Karma as the code works just fine in a browser. Is there something missing in my Karma config to have this type of file structure work?

Thanks!

Query regarding docker, test environments and dev workflow

I am a QA automation engineer and I am investigating docker as a potential way to run our tests.

Traditionally we have followed the git flow method where essentially where you have a dev and a master branch. Dev are constantly merging their new changes to the dev branch. When we wish to release, we will have a code cut off, where everything currently on the dev branch is deemed to be part of the next release. Script is then run to create the release candidate and this is deployed to staging. Any fixes that need to be done are made to the release branch and once ready to go to prod, new code is merged to master and deployed. Master is back merged to all branches so that everything is up to date. (described in more detail here: http://ift.tt/mixx0f).

So my question is with docker do you need to have this workflow? Im thinking of maybe having a workflow like describe below:

  • Dev start working on a new feature.
  • Dev pulls master, creates feature branch - does his dev work - unit tests pass, dev is happy for work to go to QA
  • Dev runs script to create release candidate (which would involve pulling master again in case new code has been merged to master by another dev),
  • Docker then spins up a container with multiple containers inside that (front end app, DB instance etc)
  • Tests (unit, api, selenium integration etc) are then run against this release candidate and if good deploy to production.

So do I need a staging env in the traditional sense where it is constantly available?

pypy interpreter does not recognize nosetests while pypy3 does

I have written a script to test my Python library over different versions of python. For pypy3,

python setup.py test

Works just fine. But on pypy, It runs 0 tests. No failure, but zero tests. Here is my script

language: python

matrix:
  include:
    - python: "pypy"
      env:
        - TEST_PY3="false"
    - python: "pypy3"
      env:
        - TEST_PY3="true"


before_install:

 - sudo apt-get update
 - sudo apt-get install build-essential

install:
  - if [[ "${TEST_PY3}" == "false" ]]; then
      pip install Cython;
      python setup.py install;
    fi

  - if [[ "${TEST_PY3}" == "true" ]]; then
      pip install Cython;
      python setup.py install;
    fi

script:
 - python setup.py test

I am using nosetests. This part of my setup.py might be helpful

test_suite         = 'nose.collector',
tests_require      = ['nose>=0.10.1']

Is there any problem of nosetests with pypy?

Tracking Vague Requirements for Web Development (Tools/Techniques?)

So i've been placed in a position at starting a QA Dept. at a Web Development Company. It's mainly a Rails shop and I came from QA departments where requirements are strictly defined (A needs to do B and C expects D...etc...)

However at this Web based company (and i'd imagine other smaller web-dev companies) requirements are really strictly defined and aren't kept in any specific tool and tracked in detail. As in the requirements are more coming from the customer of what they are "looking" for and then slices are taken and created based off those.

I see this as a good and bad thing, it allows the spec/requirements to change and be flexible without much changing of anything spec wise...but actually tracking these for testing becomes a problem. I don't need anything super specific...but I need "something".

So I'm looking for a way/tool to be able to track high level requirements obtained from a customer, and then (ideally) place my "issues" relating to these requirements in some sort of trackable way, but I haven't found anything flexible enough to allow this (then again I'm new to manning a QA dept.)

Does anything come to mind for doing this? is there any particular techniques I should keep in mind when doing this? Right now DoneDone is being used for tracking bugs...so perhaps even that could somehow be linked to these specs?

Thanks for your time.

Testing factory method in command handler with phpspec

How to test static methods which are infact factory methods:

public function hireEmployee(HireEmployeeCommand $command)
{
    $username = new EmployeeUsername($command->getUsername());
    $firstName = $command->getFirstName();
    $lastName = $command->getLastName();
    $phoneNumber = new PhoneNumber($command->getPhoneNumber());
    $email = new Email($command->getEmail());
    $role = new EmployeeRole($command->getRole());

    if ($role->isAdmin()) {
        $employee = Employee::hireAdmin($username, $firstName, $lastName, $phoneNumber, $email);
    } else {
        $employee = Employee::hirePollster($username, $firstName, $lastName, $phoneNumber, $email);
    }

    $this->employeeRepository->add($employee);
}

Here I can't mock the Employee object, but I can mock the EmployeeRepository::add() method for the expected employee but then I'm again checking the state of the Employee:

public function it_hires_an_admin()
{
    $this->employeeRepository
        ->add(Argument::that(/** callback for checking state of Employee object */))
        ->shouldBeCalled();

    $this->hireEmployee(
        new HireEmployeeCommand(self::USERNAME, 'John', 'Snow', '123456789', 'john@snow.com', EmployeeRole::ROLE_ADMIN)
    );
}

I'm aware that again I mocked the repository instead of stub it. But here I'm more interested in employee will be added to the repository instead of how it would be created. Because of that I should mock the repository but I shouldn't care about the state of the Employee (without Argument::that())? Looks reasonable, but then I can't be sure that the created Employee is correct.

Multiple T-test in R

I have a 94 varibles(sample+proteins+group) and 172 observations in a matrix as:

Sample   Protein1   Protein2 ... Protein92 Group
1          1.53      3.325   ...   5.63      0
2          2.32      3.451   ...   6.32      0
.
. 
.
103        3.24      4.21    ...   3.53      0               
104        3.44      5.22    ...   6.78      1
.
.
.
192        6.75      4.34    ...   6.15      1

Something like this. Some of the sample are in group 0 and some are in group 1. I want to test if there is a differences between group 0 and 1 using a t-test and I want to do it for all the proteins. I was thinking of using an apply but have never used it so I am not sure how to use it. Also the names are not Protein1, protein2... , it is much longer so I would not want to have to write them all.

I also would only like the p-value for each protein in a matrix, something like this:

Protein  p-value
Protein1   0.00563
Protein2   0.0640
.
.
Protein92  0.610

Or something simular so that I after can find just the ones with a p-value lower than 0.05/92.

I hope I make sense, have never posted here before. Seems like an easy problem but couldn't find any help.

Send POST request through QUnit

I want to test a JavaScript method which sends POST message. I am using QUnit as my testing framework, but for some reason I am unable to send POST message when I call through QUnit. Here is the method to be tested:

function createObject(currentProject, name){
$.post(
    "actionHandler.php",
    {
        "action": "createSomething",            
        "name": name            
    },
    function(data) {    //Receive data from backend
        if (data.status == "ok") {
            //do something
        }
        //do other things
    },
    "json"
);}

When I call this method from my QUnit test, I don't see any call being made to back end. How to send a POST message using QUnit? I want to receive some data as a JSON response and manipulate that data for other purpose, which seems interesting to test. Also my question is, is there other better ways to test such functions?

protractor kendo combo box

I am having trouble selecting a kendo combobox selection using angular js. The best way i can tell to change the value is to set the model.batch.type on the controller, but i don't know how to do that. I have messed around with executing a script to do it but have had no luck. Any help would be appreciated.

<div class="row form-group">
    <label for="type" class="col-sm-1 k-label text-right">Type</label>
    <input id="type" class="col-sm-1 no-padding" kendo-combo-box data-ng-model="model.batch.type"
           k-data-text-field="'name'" k-data-value-field="'id'" k-data-source="model.batchTypes"/>
    <label for="size" class="col-sm-1 k-label text-right">Size</label>
    <input type="text" id="size" name="size" class="col-sm-1 k-textbox" ng-required="true" data-ng-
model="model.batch.size"/>
    <label class="col-sm-2 col-sm-offset-1 k-label">
        <input type="checkbox" data-ng-model="model.barCodePrint" checked/> Print Batch Barcode
    </label>
    <button type="button" class="btn" ng-click="cancel()">Cancel</button>
    <input type="submit" class="btn btn-primary" ng-disabled="createBatchForm.$invalid"
           value="Create"/>
</div>

I am trying to select an option in the second input with id='type'.

Protractor: how to click link that is said to be not visible

I need to click the link in the page header:

<div class="fixed">
        <nav class="top-bar" data-options="is_hover:false">
        ...
        <section class="top-bar-section">
            <ul class="left">
                ...
                <li ng-show="hasPermission('ROLE_MESSAGE')" class=""><a href="#/message" class="ng-binding">Message</a></li>
            </ul>
        </section></nav>
</div>

But any attempt fails with "Element not visible error". It seems strange since on the previous step I've logged on as a user that has the permission ROLE_MESSAGE. Tried different locators, but none work.

Testing QTP s Application Crash Recovery scenario

I need to VALIDATE the UFT(QTP) tool to use it in our Medical Automation testing projects. My Manual Test Lead has given a requirement that UFT must be able to recover from an Application Crash.

For this I have to use a sample application which is provided by UFT. As of now everything is fine, as I can enable and create an Application Crash Recovery Scenario using Recovery Scenario Manager in UFT.

The problem is I have to prove them practically that UFT will recover from the application crash, for this, first I have to CRASH the sample application and then test UFT if it is able to recover from that crash.

So I have been googling about how to crash that wpf sample application provided by HP.

Please help me crashing the app.

Thanks in adv.

Protractor click element by repeater

I am trying to click first element from a list <li> by repeater My HTML looks like:

<ul class="list-unstyled" ng-show="axCarSearch.found.length">
                    <!-- ngRepeat: car in axCarSearch.found --><li ng-repeat="car in axCarSearch.found" viewport-check="$index==axCarSearch.current" class="ng-scope">
                        <a class="clearfix current" ng-mousedown="axCarSearch.select(car)" ng-class="{current: $index==axCarSearch.current}">
                            <!-- ngRepeat: m in car.match track by $index --><!-- ngIf: $odd -->
                            <!-- ngIf: $even --><span ng-repeat-end="" ng-if="$even" ng-bind="m" class="ng-binding ng-scope">VW</span><!-- end ngIf: $even --><!-- end ngRepeat: m in car.match track by $index --><!-- ngIf: $odd --><strong ng-repeat-start="m in car.match track by $index" ng-if="$odd" class="text-primary ng-binding ng-scope" ng-bind="m">Passat</strong><!-- end ngIf: $odd -->
                            <!-- ngIf: $even --><!-- end ngRepeat: m in car.match track by $index --><!-- ngIf: $odd -->
                            <!-- ngIf: $even --><span ng-repeat-end="" ng-if="$even" ng-bind="m" class="ng-binding ng-scope">05/07-10/10 (3C)</span><!-- end ngIf: $even --><!-- end ngRepeat: m in car.match track by $index -->
                            <!-- ngIf: !car.match -->
                            <small class="pull-right text-muted ng-binding">Typ</small>
                        </a>
                    </li><!-- end ngRepeat: car in axCarSearch.found --><li ng-repeat="car in axCarSearch.found" viewport-check="$index==axCarSearch.current" class="ng-scope">
                        <a class="clearfix" ng-mousedown="axCarSearch.select(car)" ng-class="{current: $index==axCarSearch.current}">
                            <!-- ngRepeat: m in car.match track by $index --><!-- ngIf: $odd -->
                            <!-- ngIf: $even --><span ng-repeat-end="" ng-if="$even" ng-bind="m" class="ng-binding ng-scope">VW</span><!-- end ngIf: $even --><!-- end ngRepeat: m in car.match track by $index --><!-- ngIf: $odd --><strong ng-repeat-start="m in car.match track by $index" ng-if="$odd" class="text-primary ng-binding ng-scope" ng-bind="m">Passat</strong><!-- end ngIf: $odd -->
                            <!-- ngIf: $even --><!-- end ngRepeat: m in car.match track by $index --><!-- ngIf: $odd -->
                            <!-- ngIf: $even --><span ng-repeat-end="" ng-if="$even" ng-bind="m" class="ng-binding ng-scope">10/00-05/05 (3B3/3B6)</span><!-- end ngIf: $even --><!-- end ngRepeat: m in car.match track by $index -->
                            <!-- ngIf: !car.match -->
                            <small class="pull-right text-muted ng-binding">Typ</small>
                        </a>
                    </li><!-- end ngRepeat: car in axCarSearch.found --><li ng-repeat="car in axCarSearch.found" viewport-check="$index==axCarSearch.current" class="ng-scope">
                        <a class="clearfix" ng-mousedown="axCarSearch.select(car)" ng-class="{current: $index==axCarSearch.current}">
                            <!-- ngRepeat: m in car.match track by $index --><!-- ngIf: $odd -->
                            <!-- ngIf: $even --><span ng-repeat-end="" ng-if="$even" ng-bind="m" class="ng-binding ng-scope">VW</span><!-- end ngIf: $even --><!-- end ngRepeat: m in car.match track by $index --><!-- ngIf: $odd --><strong ng-repeat-start="m in car.match track by $index" ng-if="$odd" class="text-primary ng-binding ng-scope" ng-bind="m">Passat</strong><!-- end ngIf: $odd -->
                            <!-- ngIf: $even --><!-- end ngRepeat: m in car.match track by $index --><!-- ngIf: $odd -->
                            <!-- ngIf: $even --><span ng-repeat-end="" ng-if="$even" ng-bind="m" class="ng-binding ng-scope">10/96-09/00 (3B2/3B5)</span><!-- end ngIf: $even --><!-- end ngRepeat: m in car.match track by $index -->
                            <!-- ngIf: !car.match -->
                            <small class="pull-right text-muted ng-binding">Typ</small>
                        </a>
                    </li>
                </ul>

As you can see its some kind of LIST of cars, where each <li> represent one of them. I basicly try to click one specific (started with first one)

I try to write something like this:

element(by.repeater('car in axCarSearch.found').row(0)).element(by.css('[ng-mousedown="axCarSearch.select(car)"]')).click();

Unfortunately I get an error:

No element found using locator: by.repeater(car in axCarSearch.found").row("0")"

Is there anyone who can help me find a way to click on that <li> please?

Is there any way to improve the application load time in Protractor?

The initial application load time of an angular application for e2e testing using Protractor is consuming a longer time. Is there any way to improve this?

The page object used for initial login is :

var Login = function() {
var username = element(by.model('login.username'));
var pass = element(by.model('login.userpwd'));
var loginButton = element(by.xpath('//*  @id="logindiv"]/div[3]/div);

this.login = function(name, password) {
     browser.get(config.loginUrl);
     username.sendKeys(name);'
     pass.sendKeys(password);
     loginButton.click();
  };
};
module.exports = Login;`


How to write automated functional test using Facebook SDK in Android app?

I need to write an automated test of my Android app that is using Facebook login. Does anyone know how to write test of the Facebook login? I'm using Espresso to automate the UI test.

Watin test .exe file does not work in another pc

I have problem with running WatiN test .exe file in another pc. When I try to run .exe file in my own pc (where I created it) it is work well! But then I run the same test in another pc, it is not work. IE is open and start testing but then program give me this error:

WatiN.Core.Exceptions.ElementReadOnlyExcption: Element with Id:Fname is readonly.

I know what this error mean, but gist is that this test have to work. In another pc there is not Visual Studio. Maybe it is need to install something?

peformance difference on using -r option in bonnie++

We are doing disk i/o performance using bonnie++ on remote disk by mounting it on my local system. The ram of my local system is 10gb. Because of that we have to provide file double the size of ram. It is taking a lot of time in performance test as we are also using option -b for fsync option. If we use -r option to specify the ram, will it be any difference in performance testing or is it ok to use this option.

How to generate or run Monkey test for .exe based programs?

I have an .exe program written in c# and .NET. I really want to make an automated Monkey test, so that every component such as Win forms, WPF forms, Guis and everything could be clicked and tested out.

I know a program such as TestComplete, where I can record my own clickings and its fine actually, however I really have to test this in different languages so the script won't actually work for other languages.

Do you have any recommendations? Thanks.

python nose tests: is it possible to run a subset of tests

I'm using nose for testing together with script-manager. Everytime I do manage test it'll run through all the tests. This is OK for CI but not ideal if one wants to fix something. In golang, there is a way to specify a subset of test to run by providing a regexp. Is there something similar in nose?

Data set for Software reliability prediction

I am looking for Data set for Software reliability prediction.... with Failure/ Defect count.

Can any one suggest any data set with link???

lundi 29 juin 2015

Test Methods and Test Class in compiled DLL

Is there a way in Visual Studio (Any version) to use Tests from compiled Dll's?

I have a Test Class:

[TestClass]
Public Class TestingClass
{
    [TestMethod]
    public void TestingMethod()
    {}
}

Is there a way to compile the class library that hold this kind of class's into a Dll and reference that DLL in a different Test Project so they will show up in the Tests View?

How to create a return value using an unspecified parameter in GMOCK?

Say I'm mocking class IClass which has a method call RClass DoIt(int x) like this:

class RClass
{
    int _x;
public:
    RClass(int x) :_x(x) { }
}

class MockClass : public IClass
{
public:
    MOCK_METHOD(DoIt, RClass(int)));
}

Then in my test I want to return a RClass value constructed with the first argument called in the code under test. I tried like this, but it didn't work:

int value = 0;
MockClass mc;
EXPECT_CALL(mc, DoIt(_)).WillRepeatedly(DoAll(SaveArg<0>(&value), Return(RClass(value))));

Any ideas?

Creating system test environment

I have system that consists of device that is connected to PC and controlled with cross platform (Linux and Windows) function library. Under Windows this library is created with visual c++, under Linux - gcc. I need to create testing system that could test library code that is written in C++ and whole system behavior. With help of special functions I can get state of device that could be compared to expected one after calling some functions in library. I have no experience in unit testing at all. Would you point me on way I should go to make this system test environment.

Is there a way to make a setUp and tearDown methods on tape?

I am using tape for testing in JavaScript, but in some cases I want to set some configuration variables that are available in all the tests within a file. Something like the setUp and tearDown methods available in PhpUnit. Those methods will be executed before and after every test in the file, respectively.

e.g:

test("setUp", function(t){
    var person = {name: 'Jose', programmer: true};
});

test("Name isn't undefined", function(){
    t.notEqual(person.name, undefined);
});

test("Is a programmer", function(t){
    t.ok(person.programmer);
});

test("tearDown", function(){
    //Do something else
});

Machine learning and software testing

How can machine learning be implemented in the process of software testing? I am browsed the net but other than a couple of research papers I got nothing much. Have any of you guys worked on this?

AngularJS & Protractor - How to check if elemenent was displayed?

I want to test if my AngularJS app is displaying a loading circle while the app is waiting for a response from a async call.

How can I check is the loading circle is displayed, because expect() seems to be fired when the page is fully loaded.

Using @FindBy to find an element. Is using XPATH okay?

I currently have this method in my selenium framework.

public void selectAddProductButton() {
    driver.findElement(By.id("Content")).findElement(By.className("Title")).findElement(By.tagName("a")).click();
}

However, I like it and I don't like it. I feel like this is a dirty way to approaching this. I thought it would be better to use @FindBy but I don't see how I could. I usually use @FindBy for more simple things. An example would be

@FindBy(id = "firstname")
private WebElement firstName;

I've read online that I can achieve this by using the @FindBy with an xpath. However, I've also read that using xpath this way is a bad practice. Is there a better way I can do this?

QA career path change

I have been in QA for more than 5 years now. Work as a Senior software QA. I have been thinking of changing my career path, without investing a lot of time and money. Full fledged automation is an option. ETL Development is another. But I am more geared towards Cyber Security/ Security Testing/Analyst. Is it a viable approach? Can I get a job in this area without getting very expensive certifications? What can you guys suggest that I should do for a career move.

Thanks

Spring MVC testing giving unexpected results

I'm trying to do a Spring-Test-MVC. Here is my code ...

@Test
public void findAll_UWPersonsFound_ShouldReturnFoundUWPersonEntries() throws Exception {
    UWPerson first = this.personBuilder("ID1", "John", "Doe", "111-11-1111");
    UWPerson second = this.personBuilder("ID12", "Jane", "Smith", "222-22-11222211");

    when(serviceMock.findAll()).thenReturn(Arrays.asList(first, second));

    mockMvc.perform(get("/uw/person"))
            .andExpect(status().isOk())
  //          .andExpect(content().contentType(TestUtil.APPLICATION_JSON_UTF8))
            .andExpect(jsonPath("$", hasSize(2)))
            .andExpect(jsonPath("$[0].id", is("ID1")))
            .andExpect(jsonPath("$[0].first_name", is("John")))
            .andExpect(jsonPath("$[0].last_name", is("Doe")))
            .andExpect(jsonPath("$[0], ssn", is("111-11-1111")))
            .andExpect(jsonPath("$[1].id", is("ID2")))
            .andExpect(jsonPath("$[1].first_name", is("Jane")))
            .andExpect(jsonPath("$[1].last_name", is("Smith")))
            .andExpect(jsonPath("$[1], ssn", is("222-222-2222")))

    ;

    verify(serviceMock, times(1)).findAll();
    verifyNoMoreInteractions(serviceMock);
}

The error I'm getting is ... java.lang.IllegalArgumentException: json can not be null or empty

Can someone help me understand what's going on here?

Jenkins multiconfiguration project handle concurrent device usage

Case

I have a Jenkins project witch run's calabash tests on mobile devices (android, ios). I use a mapping table and a self written bash script to call a device by name and execute a test on this specific device. The mapping table map's the name to the device id, or IP for iOS.

To hand over the device to the bash script I use the Jenkins Matrix Project Plugin, which lets me create a text list of devices to use ... like:

HTCOne Nexus G4

To separate on which machines (the mac for iOS or Linux for Android) the tests, I also use the Throttle Concurrent Builds Plug-in. This way I separate between the Android or Mac machine the devices are hooked to.

Now I want to build tests on multiple devices in parallel and cross vice versa.

Question

I therefore search for a Jenkins plugin which could handle the devices as a resource and only allocate it to a test if it is free. Do you know a way I can do this?

How to add Rolify fixtures with scope

I'm trying to implement the Rolify gem and have trouble adding fixtures, especially because the role is scoped to a single organization. The (model) test below fails as @user.has_role?('moderator') is false. Any idea what I'm doing wrong? The test:

def setup
  @user           = users(:one)
  @organization1  = organizations(:one)
  @moderator_role = roles(:first_organization_moderator_role)
end

test "should be moderator if fixtures correct" do 
  assert_equal @user.has_role?('moderator'), true
end

roles.yml

first_organization_moderator_role:
  name: :organization_moderator
  resource_id: 1
  resource_type: 'Organization'

In users.yml to an existing user which is related to organization one I added the roles line (I'm undertain how to set its scope to be only moderator for organization one):

one:
  organization: one
  email: orgone@example.com
  username: myster1
  activated: true
  roles: organization_moderator, organization(:one)   #I also tried ", organization_id(:one)". The idea here is to set the scope of the role.

In organizations.yml there is an organization named one.

Using a SetUp table in FitNesse to define variables

I am using the tool FitNesse to do testing. I currently have a script on my test pages that executes a SQL query based on variables that I define on each test page. However, I would like to have one page where I can go and change all these variables at once. I was wondering if there is a way to use a SetUp page to define values to be used on my test pages.

For example, on my SetUp page I have a table with two columns a state and a date. I want to be able to define all of the different dates on the SetUp page and then use the date I need on the test page.

Is there a way to do this?

Protractor - Expect NOT Equal

I have list of "cases" in a table, where I need to find specific one just by NAME and click on it.

My HTML looks like:

<tr ng-repeat-start="case in cases | orderBy:order:order_reverse" class="middle ng-scope odd readonly" ng-class-odd="'odd'" ng-class-even="'even'" ng-class="{readonly: !caseManager.isWritable(case)}">
                    <td>
                        <span ax-sharing-circle="SHARED_WITH_PARTNER" class="ng-isolate-scope"><span class="icon sharing-circle sharing-circle-left" title="Sdílený"></span></span>
                    </td>
                    <td class="case-table-claim-number fix-v-align">
                        <a ui-sref="case.general({caseId: case.caseId})" class="ng-binding" href="#/case/0a0b1c2a-94b4-444c-a2b8-c62cbd3532ae/general">20150629-165000-65</a>
                    </td>
                    <td class="case-table-claim-number fix-v-align ng-binding"></td>
                    <td class="case-table-claim-number fix-v-align ng-binding"></td>
                    <td class="case-table-make fix-v-align ng-binding"></td>
                    <td class="case-table-make fix-v-align ng-binding"></td>
                    <td class="case-table-status fix-v-align ng-binding">
                        29.6.2015
                    </td>
                    <td class="case-table-status fix-v-align ng-binding"></td>
                    <td>
                        <span class="glyphicon glyphicon-menu-down" ng-class="{
                                'glyphicon glyphicon-menu-up': hasOverview(case.caseId),
                                'glyphicon glyphicon-menu-down': !hasOverview(case.caseId),
                              }" ng-click="toggleOverview(case.caseId)"></span>
                    </td>
                </tr>

In example above you can find string 20150629-165000-65 which is name of the case.

I try to write something like this:

element(by.cssContainingText('a', global.caseNumber)).click();

which should find element and click on it, instead of that it throw error:

No element found using locator: by.cssContainingText("a", "20150629-165000-65")

Can someone advise me how to do this?

Assert file had been created in Junit (Java 6)

I'd like to write an integration for a Java program that takes an input file from source directory, copies it to staging, writes the result of processing to output directory and then removes the temporary files from staging. It's easy enough to check the output is ok, but is there an easy way to check the staging area is being used correctly? 2 things come to mind: monitoring the folder for file system events (any nice wrappers for that?), or some advanced permissions game (to allow create but not delete). Any suggestions?

Thanks a lot!

N.B. Java 6 on Windows...

What are the best tools for security testing? [on hold]

We implemnted one web application. So we want to perform security testing to my application. Can you suggest what are the tools to perform security testing. Please help me.

Revanth Gulla thapos.com

Why can't CircleCi find my tests?

Please see repo structure below. I want to run the tests in root/app2/tests/. I am using py.test.

After CircleCi couldn't infer test directory automatically I added a circle.yml file to the root directory but still the tests are not found. Any help greatly appreciated.

circle.yml file content:

general:
  build_dir: app2/tests

Repository structure:

root
├── circle.yml
├── app1
│   ├── xxx
│   ├── yyy
│  
└── app2
    ├── src
    ├── tests
        |-- test_module_1.py
        |-- test_module_2.py

REST-API Testing Tool using APIARY Documentation

We want to implement the Continuous Integration Testing for REST-APIs. Now we are using the Dredd Tool, That tool is not completely cover response result. This not completely checked the Expected Response & Actual Response. So we want like dredd related tools. Please suggest to us.

Advance Thanks !!

Angular.js tutorial running e2e test uisng protractor

I am following the Angular tutorial http://ift.tt/1lmmEA8 When I get to the last bit on the first page - "e2e using protractor", I do "npm run protractor" in a new command window with the local site running and karma running, but I get the below error log:

0 info it worked if it ends with ok
1 verbose cli [ 'c:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'c:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'protractor' ]
2 info using npm@2.11.2
3 info using node@v0.12.5
4 verbose run-script [ 'preprotractor', 'protractor', 'postprotractor' ]
5 info preprotractor angular-phonecat@0.0.0
6 verbose unsafe-perm in lifecycle true
7 info protractor angular-phonecat@0.0.0
8 verbose unsafe-perm in lifecycle true
9 info angular-phonecat@0.0.0 Failed to exec protractor script
10 verbose stack Error: angular-phonecat@0.0.0 protractor: `protractor test/protractor-conf.js`
10 verbose stack Exit status 1
10 verbose stack     at EventEmitter.<anonymous> (c:\Program Files\nodejs\node_modules\npm\lib\utils\lifecycle.js:213:16)
10 verbose stack     at EventEmitter.emit (events.js:110:17)
10 verbose stack     at ChildProcess.<anonymous> (c:\Program Files\nodejs\node_modules\npm\lib\utils\spawn.js:24:14)
10 verbose stack     at ChildProcess.emit (events.js:110:17)
10 verbose stack     at maybeClose (child_process.js:1015:16)
10 verbose stack     at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
11 verbose pkgid angular-phonecat@0.0.0
12 verbose cwd c:\Program Files (x86)\GitExtensions\angular-phonecat
13 error Windows_NT 6.1.7601
14 error argv "c:\\Program Files\\nodejs\\node.exe" "c:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "protractor"
15 error node v0.12.5
16 error npm  v2.11.2
17 error code ELIFECYCLE
18 error angular-phonecat@0.0.0 protractor: `protractor test/protractor-conf.js`
18 error Exit status 1
19 error Failed at the angular-phonecat@0.0.0 protractor script 'protractor test/protractor-conf.js'.
19 error This is most likely a problem with the angular-phonecat package,
19 error not with npm itself.
19 error Tell the author that this fails on your system:
19 error     protractor test/protractor-conf.js
19 error You can get their info via:
19 error     npm owner ls angular-phonecat
19 error There is likely additional logging output above.
20 verbose exit [ 1, true ]

Appium does not start with installation for npm and nodejs

i try install appium in ubuntu. i have faced some issue in this process for error: Appium will not work if used or installed with sudo. Please rerun/install as a non-root user. If you had to install Appium using sudo npm install -g appium, the solution is to reinstall Node using a method (Home-brew, for example) that doesn't require sudo to install global npm packages

android test case. how to get the services running?

I have a test case in which i am starting a service by clicking a button. After this i want to verify if it has started or not. how can i do this?

private boolean isMyServiceRunning(Class<?> serviceClass) {
        ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
        for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
            String serv = service.service.getClassName();
        }
        return false;
    }

i used this in my test cases but getSystemServices() is not recognized?

Any point unit testing methods that use EF or Linq?

I am writing unit tests for my service layer, and i completely see the point of creating unit tests to validate logic. For example, if i create a function that adds two numbers, sure write a unit test for this.

But if in my service layer method i have something like this

public ICollection<MyEntity> GetAllAsync()
{
    return _context.MyEntities
        .Where(e => !e.IsDeleted)
        .ToList();
}

What is the point in unit testing this? Since i am getting this from a database, it seems stupid to mock the database, because i am then just assuming that Linq is working as it should be?

Would it not be better to test this against an actual "test" database with sameple data in it. This way i can see if the number of record that are retrieved from the database match what i would expect?

I know that testing against a database, makes this more of a integration test, but is it really valid for unit testing?

What if i take another example, say this

public int Delete(long id)
{
    _context.Database.ExecuteCommand("DELETE FROM myTable WHERE Id = ?", id);

    return _context.SaveChanges();
}

How can this function be unit tested? If i mock _context.Database and create a unit test that checks if _context.SaveChanges is being called (which i see no point in what so ever), there is no guarntee that it will actually delete my data. WHat if i have a foreign key constraint? The mock would pass, but the actual method would fail really?

I am just starting to think, that unless a method actually calculates some sort of logic, i dont see the point/reason for creating a unit test, especially when using Entity framework?

What's a good strategy for using assert in Promise handlers

I'd like to test the values returned by an async operation using mocha. The values are provided via a plain A+ promise. Unfortunately the .then handler will now swallow all the exceptions thrown by assert so the tests will pass no matter what:

someOp().then(function(result){
  // throws, but will be swallowed
  assert(result.indexOf('I_DONT_WANT_THAT') < 0);
  done();
});

How can I correctly test the result of my async operation? All I can think of is endlessly propagating the error, but at some point I will need assert to throw a real error for my test to fail.

dimanche 28 juin 2015

Codeception Click Button is not working for general method in Laravel

I use codeception in my laravel 4.2 project for functional test. I was group some clickable button as Click Button method.

For example, For click new button, i made clickNewButton() method in FunctionalHelper.php and reuse it.

But in that point, some button can clickable and some button are not. So, if somebody know the way to solve this solution, please let me know.

public function clickNewButton()
{
    $I = $this->getModule('Laravel4');
    $I->click(Lang::get('buttons.new'));
}

Thanks

Testing: Collection.find() is undefined in server side test

I cannot use Collection.find() to retrieve the collection in the server side test.

I am testing a function that inserts a document into a collection. And I would like to test that after calling it, the count() of the collection is 1.

Here is my test using Jasmine:

describe("myFunction", function() {
  it("saves the item", function() {
    // call the function ...

    expect(myCollection.find().count()).toBe(1);
  });
});

But I keep on getting:

TypeError: Cannot call method 'count' of undefined

Any suggestions?

Code coverage measurement on real hardware target

Could you please share your idea about the measurement code coverage that is run on actual hardware target? It's mean how to do instrument for that test and the method how to get the coverage information after testing code is executed on real hardware.

Example: I have STM32L152RB discovery board. I do the Unit testing for its software. I can run the code coverage measurement on X86 (Visualizing environment or PC environment). But I want to run that testing code on real hardware (STM32L152RB discovery board) to make sure that the code coverage is more reliable.

Thanks and regards, TRUONG

context:property-placeholder not working if we use property file under src/test

I'm using the property file to configure the datasource in spring :

<bean id="mydataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
        destroy-method="close">
        <property name="driverClass" value="${database.driver}" />
        <property name="jdbcUrl" value="${database.url}" />
        <property name="user" value="${database.username}" />
        <property name="password" value="${database.password}" />
         <property name="initialPoolSize" value="${database.initialpoolsize}" 
            />
         <property name="minPoolSize" value="${database.minpoolsize}" /> 
         <property name="maxPoolSize" value="${database.maxpoolsize}" /> 

    </bean>

Here is the configuration of this file in spring

<context:property-placeholder location="classpath*:database.properties" />

This property file is under src/test/config/ folder , when I run the test it gives me this error:

java.lang.IllegalArgumentException: Could not resolve placeholder 'database.driver' in string value "${database.driver}"

Could someone help me on that?

How to call nested factory_girl attribute

I am using rspec and factory girl and am having a weird problem getting a sub class from a factory. I am creating a designer, which is a sub cat of a user, however the test is still receiving a user, not a designer.

FactoryGirl.define do
  factory :user do
    factory :designer do
      role: "designer"
    end
  end
end

describe StoreRating do
  it "should have a rating" do
    user = FactoryGirl.create(:designer)
    store = FactoryGirl.create(:store)

    StoreRating.create(designer: user, store: store, rating: 5) 
  end
end

expected Designer, got User

Meteor testing: read from fixture

I would like to know how to use fs.readFileSync to read from a fixture file while testing my Meteor app with Jasmine and Velocity.

I am testing a method that makes an external API call, and I want to mock the response. I have saved a sample .xml response from the API in the tests directory. My plan is to read from that file, and mock the response.

But I am not able to read that file because Meteor does not include it when building the app. Here is an error I get:

'/Users/mikecho/myApp/.meteor/local/build/programs/server/sample_response.xml'

How can I read from this file? Or is there a better way to mock this third party API response?

Here is how I am stubbing the response:

var fs = Meteor.npmRequire('fs');
var path = Meteor.npmRequire('path');

HTTP = {
  get: function (url) {
    var sampleResponse = path.resolve('./sample_response.xml');

    return {
      content: fs.readFileSync(sampleResponse)
    };
  }
};

Simulating nested params in tests

I need simulate sending params in test, same as these inputs would send:

<input id="quantity" name="quantities[9671]" type="number" value="1" />
<input id="quantity" name="quantities[9822]" type="number" value="1" />

Test looks like this: (using Test Unit, the default testing framework in Rails):

test "placing item into basket"
  cart = Cart.new(session)

  post :create,
    product_variant_ids: [@product.variants.first.id],
    "quantities[#{@product.variants.first.id}]" => 1 # <<<------ not working 

  assert_equal 1, cart.items.count
end

Python testing equality of pathlib.PosixPath objects

I have a function iterating over a directory and returning pathlib.PosixPath objects for each file in that directory. I would like to write a test for this function. My only idea is to use mocking but I have no clue how to go about that.

def get_templates(self):
    p = Path(self.root, self.templates_dir)
    return [file for file in p.iterdir() if file.is_file()]

How do I automate testing of the code (no IDs on many elements and a lot of elements with the same class names)?

I'm trying to automate testing of the code: Well, written without testing in mind (no IDs on many elements, and a lot of elements with the same class names).

<th class="k-header k-filterable k-with-icon" scope="col" data-title="Package Detail" data-index="0" data-field="PackageDetail.Namee" data-role="columnsorter" data-dir="asc" aria-sort="ascending">

<a class="k-grid-filter" href="javascript:void(0)" tabindex="-1">
<span class="k-icon k-filter" style=""/></a>

<a class="k-link" href="/Valiadationrule/GetData?ValiadationruleGrid-sort=PackageDetail.Namee-asc">Package Detail<span class="k-icon k-i-arrow-n"/></a></th>

<th class="k-header k-filterable k-with-icon" scope="col" data-title="Category" data-index="1" data-field="Category" data-role="columnsorter">

<a class="k-grid-filter" href="javascript:void(0)" tabindex="-1">
<span class="k-icon k-filter" style=""/></a>

<a class="k-link" href="/Valiadationrule/GetData?ValiadationruleGrid-sort=Category-asc">Category</a></th>

<th class="k-header k-filterable k-with-icon" scope="col" data-title="Name" data-index="2" data-field="Name" data-role="columnsorter">

<a class="k-grid-filter" href="javascript:void(0)" tabindex="-1">
<span class="k-icon k-filter"/></a>

<a class="k-link" href="/Valiadationrule/GetData?ValiadationruleGrid-sort=Name-asc">Name</a></th>

Free service to test sms sending to US mobile

I've just needed to test integration with ExactTarget service which sends sms just to US customers of our website.

I've tried couple of websites with fake US numbers (like http://ift.tt/1w0L5me etc.), registered twilio account and got free trial phone number, but in all these cases sent sms is not displayed anywhere.

In case if we use the real US mobile number, sms is sent correctly. So the problem is not in our business logic.

Could you please, guys, recommend some good free services (live now) to receive sms online on US mobile phone ?

Thanks in advance for your help

iOS App testing - Low Budget Solution

So I am currently building my first iOS iPhone App which I plan to launch in the coming months. I have now finished my app but I don't have a big budget so testing on multiple devices is difficult. I already have an iPad so I assume that could run an iPhone version just to check that all the code is working. If I know that the code can run on an actual iOS device (the iPad) will the simulator suffice for the rest of testing would you think? I do plan to use test flight later on in the project too.

samedi 27 juin 2015

Testing command handler with phpspec

Lately I'm giving a try to phpspec. It works great, but I have got a problem with testing command handlers. For example in PHPUnit I test it that way:

/**
 * @test
 */
public function it_should_change_an_email()
{
    $this->repository->add($this->employee);

    $this->handler->changeEmail(
        new ChangeEmailCommand(
            $this->employee->username()->username(),
            'new@email.com'
        )
    );

    Asserts::assertEquals(new Email('new@email.com'), $this->employee->email());
}

and setup:

protected function setUp()
{
    $this->repository = new InMemoryEmployeeRepository();
    $this->createEmployee();

    $this->handler = new EmployeeCommandHandler($this->repository);
}

The main point is that this test make assertions on the Employee object to check if CommandHandler is working good. But in phpspec I can't make assertion on different object than the specifying one, in this case I can only make assertion on my CommandHandler. So how I can test a command handler in phpspec?

vendredi 26 juin 2015

gcov returns "Unexpected number of functions"

I plan to use gcov to get the coverage info. I start with this toy program

#include <stdio.h>

double foo(double x){
  if (x>0)

    printf("A0\n");
  else
    if (x<-10)
      printf("A0\n");
    else
      printf("A1\n");
  return 0;

}

int main(){
  foo(2);
  foo(-10);
}

My command line is:

  gcc -fprofile-arcs -ftest-coverage -o test test.c
  ./test
  gcov test

But I get this error message using

~ gcov test.c
Unexpected number of functions.
Invalid .gcda File!
~ gcov test.c

My objective is to test the branch and line coverage for the function 'foo'. What command line should I use?

Random testing tool for floating point programs

Is there some free random testing tool for C floating point programs? Even pure random testing tool can be useful. It would be nice that such a tool also includes a coverage percentage as output.

Web Development QA Department from Scratch

I posted a similar question in the QA Stack exchange, but basically im going to be starting a QA Department for a Web Development/Mobile company soon. And I wanted to get some thoughts from other Web Devs/Developers in general on what you have experienced working/not working.

I have around 6 years QA experience total, mostly just doing testing/unit testing/test plans/etc... but I kinda took responsibility for my last group.

That being said I've been doing research and different ways QA groups are ran, and wanted to get some ideas of what worked/what didn't.

Right now my plan is to centralize Bug tracking/requirements to hopefully one suite of software, and integrate test plans into that (Still looking into resources/tools, ideas are welcome), but beyond that...I guess whats the best way to make something that's flexible enough to be able to handle web development (since sites/mobile apps differ so much).

I was thinking making test plan templates based on user stories, but Im not sure the company does that right now.

I'd really like a book recommendation on either QA Testing/Process or just the different software processes (like I know Scrum/Agile from a distance (being involved in them) , but I guess understanding the whole process is another thing).

Basically I have a lot of ideas in my head right now, but am trying to gauge what you have experienced working/doesn't work in your company today. And tools/software recommendations (for either tracking bugs/test cases/etc.. are wanted but not the focus of this question.)

Thanks!

how do I set and get a property using mock objects in phpunit?

I created a mock object as follows:

        $mock_kyc = $this->getMockBuilder('Group_KYC_Model')
            ->disableOriginalConstructor()
            ->setMethods(['api_record', '__get'])
            ->getMock();

I want to set the id of the mock_kyc object. How do I do that?

Can I just do $kyc->id = 12345;

Test ASP.NET application for Windows Authentication for user which is not in domain

I am working on a ASP.NET application which uses Windows Authentication. It works fine with users who are in Active Directory. Each page of application has been accessed by different users which are assigned roles with SQLRoleProvider. My question is how can I test my application for users who are not in domain? Can I pass fake user name and password from my code to test it?

Please help me with this.

Is there is any way to do this?

Thanks.

Testing HashSets in doctest

I am trying to test HashSet using doctest via iex. If I run the line below, it gives the same result, but the #HashSet<["rockerboo"]>} can not be represented in the syntax. I can't think of a way to represent it properly, and I can't find any examples of it. Thanks!

  @doc """
  Adds user to HashSet in state

  ## Examples
      iex> Elirc.Channel.add_user_to_state("rockerboo", %{users: HashSet.new})
      %{users: #HashSet<["rockerboo"]>}
  """
  def add_user_to_state(user, state) do
    %{state | users: HashSet.put(state.users, user) }
  end

When running mix test, I get the following error.

 Doctest did not compile, got: (TokenMissingError) lib/elirc/channel.ex:99: missing terminator: } (for "{" starting at line 99)
 code: %{users: #HashSet<["rockerboo"]>}

Line 99 is %{state...

How to automate tests for mobile games on devices?

Can anyone suggest what tools I should look at to run automated tests against mobile games running on physical iOS and Android devices (or cloud hosted devices like DeviceAnywhere or Perfectomobile)?

Is there anyway to do automate tests on devices without building a framework into the game? Can image detection on screen be used with automation tools like Selenium?

Any suggestions would be helpful, thanks!

How to stub rails service's attributes?

I have a transaction inside a service and I need to test the rollback of the database if the process fails. So, I need to stub an attribute called '@status' to return false.

I know how to stub Models, but this way below don't worked for me:

Model.any_instance.stub(:method).and_return(result)

There is a way of stub it without add other gems? I'm already using the shoulda_matchers gem.

Android - Assertj Android - Run error

I´m trying to run assertj-android but it send an error. (it runs fine with junit 4)

My Dependencies:

dependencies {
    testCompile 'junit:junit:4.12'
    androidTestCompile ('com.squareup.assertj:assertj-android:1.0.0'){
        exclude group:'com.android.support', module:'support-annotations'
    }
}

My Build type:

buildTypes {
    debug {
        signingConfig signingConfigs.debug

        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }

My progard-rules.pro:

## Assertj
-dontwarn org.assertj.**
-keep class org.assertj.** {*;}

And I get this error on run:

:app:proguardDebugAndroidTest
Warning:org.assertj.core.api.JUnitSoftAssertions: can't find superclass or interface org.junit.rules.TestRule
Warning:org.assertj.core.api.JUnitSoftAssertions$1: can't find superclass or interface org.junit.runners.model.Statement
Warning:org.assertj.core.api.JUnitSoftAssertions: can't find referenced class org.junit.rules.TestRule
Warning:org.assertj.core.api.JUnitSoftAssertions: can't find referenced class org.junit.runners.model.Statement
Warning:org.assertj.core.api.JUnitSoftAssertions: can't find referenced class org.junit.runner.Description
Warning:org.assertj.core.api.JUnitSoftAssertions: can't find referenced class org.junit.runners.model.Statement
Warning:org.assertj.core.api.JUnitSoftAssertions: can't find referenced class org.junit.runner.Description
Warning:org.assertj.core.api.JUnitSoftAssertions$1: can't find referenced class org.junit.runners.model.Statement
Warning:org.assertj.core.api.JUnitSoftAssertions$1: can't find referenced class org.junit.runners.model.MultipleFailureException
Warning:org.assertj.core.api.JUnitSoftAssertions$1: can't find referenced class org.junit.runners.model.Statement
Warning:org.assertj.core.internal.JavaBeanDescriptor: can't find referenced class java.beans.PropertyDescriptor
Warning:org.assertj.core.internal.PropertySupport: can't find referenced class java.beans.PropertyDescriptor
Warning:org.assertj.core.internal.cglib.core.DebuggingClassWriter$1: can't find referenced class org.assertj.core.internal.cglib.asm.util.TraceClassVisitor
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.PropertyDescriptor
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.IntrospectionException
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.Introspector
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.BeanInfo
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.PropertyDescriptor
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.BeanInfo
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.PropertyDescriptor
Warning:org.assertj.core.internal.cglib.core.ReflectUtils: can't find referenced class java.beans.IntrospectionException
Warning:org.assertj.core.util.introspection.Introspection: can't find referenced class java.beans.Introspector
Warning:org.assertj.core.util.introspection.Introspection: can't find referenced class java.beans.BeanInfo
Warning:org.assertj.core.util.introspection.Introspection: can't find referenced class java.beans.PropertyDescriptor
Warning:org.assertj.core.util.introspection.Introspection: can't find referenced class java.beans.BeanInfo
Warning:org.assertj.core.util.xml.XmlStringPrettyFormatter: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry
Warning:there were 59 unresolved references to classes or interfaces.
         You may need to add missing library jars or update their versions.
         If your code works fine without the missing classes, you can suppress
         the warnings with '-dontwarn' options.
         (http://ift.tt/1a4OICW)
:app:proguardDebugAndroidTest FAILED
:app:newRelicDeinstrumentTask
[newrelic.info] Deinstrumenting...
Error:Execution failed for task ':app:proguardDebugAndroidTest'.
> java.io.IOException: Please correct the above warnings first.

Why?

Android Studio - Test - Whats the difference between each run type?

How should I run my tests? What´s the difference between each one?

enter image description here

memtest v4.3.7 doesn’t stop

I had some issues with ram replacements and run memtest86 v.4.3.7. Somewhere on their website was announced, that for older ram types they fall back from v6 to v4.x so everything is cool.

Now memtest86 is running since hours and says pass: 100% but still testing storage. Until reaching 100% it need like 3 hours now is additional 3 hours testing at 100%. When I tested just one module after a while it says test passed... but with 4 modules nothing happen :(

Selenium tests and network timeout issues

I am using selenium to automate test cases, however so far the tests are flaky due to network issues (slowness etc..). this results in many failing test cases. Currently, rerunning failed test cases is taking considerable amount of time, making automation highly inefficient as opposed to manual testing. Is there a way to make the testing more dynamic other than adding implicit and explicit timeouts.

thanks in advance

App get live without testing by Apple's team

My app is live now. I've submitted an app in AppStore few days back. Remember, the only way to get into in my app is to Sign-up with Facebook. Once we got email about Ready For Sale green signal from iTunes. I was excited to check which account they used to get into my app? But, wait. Let me wash my eyes first, there's no test entries from any new accounts. Isn't it strange?

My app is a dating app and should be test well before get on the AppStore, but here its not. As without logging into app how do they test the features of my app? IAPs I am offering to my app users? They know nothing about my app. But still its LIVE now ! I'm happy with it, but worried about Apple's guidelines.

What you guys think?

How do I test interactions with GTMOAuth2Authentication?

I'm making changes to an iOS app that uses Google Toolbox for Mac OAuth 2 to access Google Calendar.

After making my change I can see the "happy path" works fine, but how do I test conditions where my token has expired and is automatically renewed, vs token expired and stale (forcing a re-authentication) etc?

Does the OAuth 2 Playground help me at all? How?

Is Ruby compatible with strict Page Object Pattern?

I have built various Test Automation frameworks using the Page Object Pattern with Java (http://ift.tt/19A2hZK).

Two of the big benefits I have found are:

1) You can see what methods are available when you have an instance of a page (e.g. typing "homepage." will show me all the actions/methods you can call from the homepage)

2) Because navigation methods (e.g. gotoHomepage()) return an instance of the subsequent page (e.g. homepage), you can navigate through your tests simply by writing the code and seeing where it takes you.

e.g.

WelcomePage welcomePage = loginPage.loginWithValidUser(validUser);
PaymentsPage paymentsPage = welcomePage.goToPaymentsPage();

These benefits work perfectly with Java since the type of object (or page in this case) is known by the IDE.

However, with Ruby, the object type is not known until runtime and therefore, I cannot see how you can realise these benefits on an automation suite built using Ruby (e.g. a Calabash automation suite).

Can anyone show me how you would use Ruby to gain these benefits (ideally when using with Cucumber)?

jeudi 25 juin 2015

camel blueprint test not working with sql named parameters in sql.properties

Can any one suggest some solution for the below scenarios

  1. I have query(select id from emp.employee) to get Id from tblemployee.

its working and I am getting the value

  1. Inside second query and passing the id value after setting to header as named parameter like.
  2. select * from emp.address where empid=:#id

its working fine when I am I writing blueprint test its showing below exception

ERROR Failed delivery for (MessageId: ID-BLRKEC329635D-62313-1435237232679-0-3 on ExchangeId: ID-BLRKEC329635D-62313-1435237232679-0-2). Exhausted after delivery attempt: 1 caught: org.apache.camel.CamelExecutionException: Exception occurred during execution on the exchange: Exchange[Message: [{id=2}]]

the header values are also printing in the exchange like

Exchange

Exchange[ Id ID-BLRKEC329635D-62313-1435237232679-0-2 ExchangePattern InOnly Headers {breadcrumbId=ID-BLRKEC329635D-62313-1435237232679-0-1, CamelRedelivered=false, CamelRedeliveryCounter=0, CamelSqlRowCount=1, firedTime=Thu Jun 25 18:30:34 IST 2015, id=2} BodyType java.util.ArrayList Body [{id=2}] ]

Stacktrace

org.apache.camel.CamelExecutionException: Exception occurred during execution on the exchange: Exchange[Message: [{id=2}]]

GameBoy Emulation - How to use test ROMS? (Particularly Blarrg's test ROMS)

I have just finished writing all instructions for the GameBoy processor (L35902) in C. However I am looking for a method to test my instructions, so I downloaded the popular Blargg ROM. I have no idea how to use it. If I just load the ROM into memory the program just executes infinitely. Is there a specific thing I should do to have the test ROM report to me the results? There is seriously almost no documentation about this, besides a readme that I do not understand.

Thank you.

How to close a confirm dialog opened by another window in GEB

In one of my functional GEB tests we have a situation where we are opening a new window by using

withNewWindow({ button.click() }, "close": true, "wait": true) {
   //Other things
}

Now when that window is being closed a confirm dialog is opening which says whether you want to leave this page or not. How to close that confirm dialog?

I know that there is a method withConfirm for closing confirm dialogs but I am not doing anything to open/close it but instead withNewWindow is opening/closing that.

I tried various options but couldn't figure out how to do that. I looked at the docs but couldn't find any examples for this.

Laravel Mock Facade shouldReceive Not Working As Intended

This test fails because it will never pass the Auth::attempt() function call. I put a dd() statement to prove that it won't make it.

If I remove the two Auth::shouldReceive() calls the code will run the first dd() statement.

If I keep even one Auth::shouldReceive() calls the first dd() statement will never get called.

I must be something silly that I'm not getting because I've looked over many tutorials.

Controller

public function postLogin() {
    $email = Input::get('email');
    $password = Input::get('password');
    dd('Does not make it to this line with auth::shouldReceive() in the test');
    if (Auth::attempt(array('email'=>$email, 'password'=>$password))) {
        dd("Doesn't make it here either with auth::shouldReceive() mock.");
        $user = Auth::user();
        Session::put('user_timezone', $user->user_timezone);
        return Redirect::to('user/dashboard')->with('message', 'You are now logged in!');
    } else {
        return Redirect::to('user/login')->with('message', 'Your username/password combination was incorrect')->withInput();
    }
}

Test

public function testUserTimezoneSessionVariableIsSetAfterLogin()
{
    $user = new User();
    $user->user_timezone = 'America/New_York';
    $user->email = 'test@test.com';
    $user->password = 'test';

    $formData = [
        'email' => 'test@test.com',
        'password' => '123',
    ];

    \Auth::shouldReceive('attempt')->once()->with($formData)->andReturn(true);
    \Auth::shouldReceive('user')->once()->andReturn($user);

    $response = $this->call('POST', '/user/login', $formData);
    $this->assertResponseStatus($response->getStatusCode());


    $this->assertSessionHas('user_timezone');
}

How to embed code in my posted message?

I'm trying how to embed code in my posted question. It's code at the following:

math.floor(3.2)

Another code:

math.round(0.9)

The end.

All tests are gray

The tests are gray!

Folow my config:

module.exports = function () {
    return {
        testFramework: 'mocha@2.0.1',
        debug: true,
        files: [
            {pattern: 'node_modules/chai/chai.js', instrument: false},
            {pattern: 'node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js', instrument: false},
            {pattern: 'node_modules/karma-sinon-chai/adapter.js', instrument: false},
            'www/assets/lib/ionic/js/ionic.bundle.js',
            'www/assets/lib/angular-mocks/angular-mocks.js',
            'www/assets/lib/ngCordova/dist/ng-cordova.js',
            'www/assets/lib/angular-ui-router/release/angular-ui-router.js',
            'www/app/app.js',
            'www/app/components/**/*Controller.js',
            'www/app/components/**/*Service.js',
            'www/app/shared/**/*Controller.js',
            'www/app/shared/**/*Service.js'
        ],

        tests: [
            'test/**/*Test.js'
        ],

        bootstrap: function (wallaby) {
            wallaby.delayStart();

            var mocha = wallaby.testFramework;
            mocha.ui('bdd');

            window.assert = chai.assert;
            window.expect = chai.expect;
            console.log(sinon);
            window.sinon = sinon;

            wallaby.start();
        }
    };
};

enter image description here

wallaby.js started
core v1.0.71
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File cache: /home/ridermansb/.WebStorm10/system/wallaby/projects/6db4bd1f4a6edddc
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Config file change detected, invalidating local cache
Fri, 26 Jun 2015 00:27:57 GMT wallaby:workers Parallelism for initial run: 2, for regular run: 2
Fri, 26 Jun 2015 00:27:57 GMT wallaby:workers Starting run worker instance #0
Fri, 26 Jun 2015 00:27:57 GMT wallaby:workers Starting run worker instance #1
Fri, 26 Jun 2015 00:27:57 GMT wallaby:workers Web server is listening at 42014
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File cache requires some updates, waiting required files from IDE
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File www/app/app.js changes are patches only: false
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File test/components/homeControllerTest.js changes are patches only: false
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File node_modules/chai/chai.js changes are patches only: false
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File www/app/shared/productsService.js changes are patches only: false
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File www/app/components/home/homeController.js changes are patches only: false
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File www/app/components/home/productsController.js changes are patches only: false
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File www/assets/lib/angular-mocks/angular-mocks.js changes are patches only: false
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Preparing to process test/components/homeControllerTest.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Preparing to process node_modules/chai/chai.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project File node_modules/chai/chai.js is not instrumented by core
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project No preprocessors configured for node_modules/chai/chai.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Writing to disk and caching processed file node_modules/chai/chai.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Preparing to process www/app/shared/productsService.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Preparing to process www/app/components/home/homeController.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Preparing to process www/app/app.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Preparing to process www/app/components/home/productsController.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Preparing to process www/assets/lib/angular-mocks/angular-mocks.js
Fri, 26 Jun 2015 00:27:57 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project File node_modules/chai/chai.js changes saved, store ts: 1433374173000, change ts: 1435278477521
Fri, 26 Jun 2015 00:27:58 GMT wallaby:workers Started run worker instance (immediate) #1
Fri, 26 Jun 2015 00:27:58 GMT wallaby:workers Started run worker instance (immediate) #0
Fri, 26 Jun 2015 00:27:58 GMT wallaby:processor No compilers found for test/components/homeControllerTest.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Instrumenting test/components/homeControllerTest.js, via process pool: true
Fri, 26 Jun 2015 00:27:58 GMT wallaby:processor No compilers found for www/app/components/home/productsController.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Instrumenting www/app/components/home/productsController.js, via process pool: true
Fri, 26 Jun 2015 00:27:58 GMT wallaby:processor No compilers found for www/assets/lib/angular-mocks/angular-mocks.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Instrumenting www/assets/lib/angular-mocks/angular-mocks.js, via process pool: true
Fri, 26 Jun 2015 00:27:58 GMT wallaby:processor No compilers found for www/app/components/home/homeController.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Instrumenting www/app/components/home/homeController.js, via process pool: true
Fri, 26 Jun 2015 00:27:58 GMT wallaby:processor No compilers found for www/app/shared/productsService.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Instrumenting www/app/shared/productsService.js, via process pool: true
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project No preprocessors configured for test/components/homeControllerTest.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Writing to disk and caching processed file test/components/homeControllerTest.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project File test/components/homeControllerTest.js changes saved, store ts: 1435278263821, change ts: 1435278477507
Fri, 26 Jun 2015 00:27:58 GMT wallaby:processor No compilers found for www/app/app.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project No preprocessors configured for www/app/components/home/homeController.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Writing to disk and caching processed file www/app/components/home/homeController.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Instrumenting www/app/app.js, via process pool: true
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project No preprocessors configured for www/app/shared/productsService.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Writing to disk and caching processed file www/app/shared/productsService.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project File www/app/components/home/homeController.js changes saved, store ts: 1435277217789, change ts: 1435278477548
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project File www/app/shared/productsService.js changes saved, store ts: 1435275823105, change ts: 1435278477535
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project No preprocessors configured for www/app/components/home/productsController.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Writing to disk and caching processed file www/app/components/home/productsController.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project File www/app/components/home/productsController.js changes saved, store ts: 1435197260094, change ts: 1435278477561
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project No preprocessors configured for www/app/app.js
Fri, 26 Jun 2015 00:27:58 GMT wallaby:project Writing to disk and caching processed file www/app/app.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File www/app/app.js changes saved, store ts: 1435271300565, change ts: 1435278477491
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project No preprocessors configured for www/assets/lib/angular-mocks/angular-mocks.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Writing to disk and caching processed file www/assets/lib/angular-mocks/angular-mocks.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File www/assets/lib/angular-mocks/angular-mocks.js changes saved, store ts: 1434463838000, change ts: 1435278477575
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File www/assets/lib/ionic/js/ionic.bundle.js changes are patches only: false
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File www/assets/lib/ngCordova/dist/ng-cordova.js changes are patches only: false
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File www/assets/lib/angular-ui-router/release/angular-ui-router.js changes are patches only: false
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js changes are patches only: false
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Preparing to process www/assets/lib/ngCordova/dist/ng-cordova.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Preparing to process www/assets/lib/ionic/js/ionic.bundle.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:59 GMT wallaby:processor No compilers found for www/assets/lib/ngCordova/dist/ng-cordova.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Preparing to process www/assets/lib/angular-ui-router/release/angular-ui-router.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:59 GMT wallaby:processor No compilers found for www/assets/lib/angular-ui-router/release/angular-ui-router.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Instrumenting www/assets/lib/ngCordova/dist/ng-cordova.js, via process pool: true
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Instrumenting www/assets/lib/angular-ui-router/release/angular-ui-router.js, via process pool: true
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Preparing to process node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Starting processor pool (if not yet started)
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js is not instrumented by core
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project No preprocessors configured for node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Writing to disk and caching processed file node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project File node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js changes saved, store ts: 1412550710000, change ts: 1435278479243
Fri, 26 Jun 2015 00:27:59 GMT wallaby:processor No compilers found for www/assets/lib/ionic/js/ionic.bundle.js
Fri, 26 Jun 2015 00:27:59 GMT wallaby:project Instrumenting www/assets/lib/ionic/js/ionic.bundle.js, via process pool: true
Fri, 26 Jun 2015 00:28:00 GMT wallaby:project No preprocessors configured for www/assets/lib/angular-ui-router/release/angular-ui-router.js
Fri, 26 Jun 2015 00:28:00 GMT wallaby:project Writing to disk and caching processed file www/assets/lib/angular-ui-router/release/angular-ui-router.js
Fri, 26 Jun 2015 00:28:00 GMT wallaby:project File www/assets/lib/angular-ui-router/release/angular-ui-router.js changes saved, store ts: 1432040388000, change ts: 1435278479236
Fri, 26 Jun 2015 00:28:00 GMT wallaby:project No preprocessors configured for www/assets/lib/ngCordova/dist/ng-cordova.js
Fri, 26 Jun 2015 00:28:00 GMT wallaby:project Writing to disk and caching processed file www/assets/lib/ngCordova/dist/ng-cordova.js
Fri, 26 Jun 2015 00:28:00 GMT wallaby:project File www/assets/lib/ngCordova/dist/ng-cordova.js changes saved, store ts: 1433087898000, change ts: 1435278479226
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project No preprocessors configured for www/assets/lib/ionic/js/ionic.bundle.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Writing to disk and caching processed file www/assets/lib/ionic/js/ionic.bundle.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project File www/assets/lib/ionic/js/ionic.bundle.js changes saved, store ts: 1431451419000, change ts: 1435278479214
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Stopping process pool
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Running postprocessor
Fri, 26 Jun 2015 00:28:05 GMT wallaby:postprocessor New TypeScript language service is required
Fri, 26 Jun 2015 00:28:05 GMT wallaby:postprocessor TypeScript postprocessor will be removed because in 11 project files none were found by patterns: **/*.ts
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Postprocessor execution finished
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Postprocessor is removed as requested by itself
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Test run started; run priority: 3
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Running all tests
Fri, 26 Jun 2015 00:28:05 GMT wallaby:workers Starting test run, priority: 3
Fri, 26 Jun 2015 00:28:05 GMT wallaby:phantomRunner Starting sandbox [worker #0, session #02u09]
Fri, 26 Jun 2015 00:28:05 GMT wallaby:phantomRunner Preparing sandbox [worker #0, session #02u09]
Fri, 26 Jun 2015 00:28:05 GMT wallaby:phantomRunner Total files to load in sandbox: 11
Fri, 26 Jun 2015 00:28:05 GMT wallaby:phantomRunner Sandbox is generated [worker #0, session #02u09]: http://localhost:42014/wallaby_sandbox0.html
Fri, 26 Jun 2015 00:28:05 GMT wallaby:phantomRunner Creating page for worker #0
Fri, 26 Jun 2015 00:28:05 GMT wallaby:phantomRunner Phantom page created
Fri, 26 Jun 2015 00:28:05 GMT wallaby:phantomRunner Prepared sandbox [worker #0, session #02u09]
Fri, 26 Jun 2015 00:28:05 GMT wallaby:workers Running tests in sandbox [worker #0, session #02u09]
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /home/ridermansb/.WebStorm10/system/wallaby/wallaby/tracer.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /home/ridermansb/.WebStorm10/system/wallaby/wallaby/tracer.js from disk
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /mocha@2.0.1/framework.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /mocha@2.0.1/framework.js from disk
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /mocha@2.0.1/configurator.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /mocha@2.0.1/configurator.js from disk
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /mocha@2.0.1/reporter.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /mocha@2.0.1/reporter.js from disk
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /node_modules/chai/chai.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /node_modules/chai/chai.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/assets/lib/ionic/js/ionic.bundle.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/assets/lib/ionic/js/ionic.bundle.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/assets/lib/angular-mocks/angular-mocks.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/assets/lib/angular-mocks/angular-mocks.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/app/app.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/app/app.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/assets/lib/ngCordova/dist/ng-cordova.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/assets/lib/ngCordova/dist/ng-cordova.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/assets/lib/angular-ui-router/release/angular-ui-router.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/assets/lib/angular-ui-router/release/angular-ui-router.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/app/components/home/homeController.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/app/components/home/homeController.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/app/components/home/productsController.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/app/components/home/productsController.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /www/app/shared/productsService.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /www/app/shared/productsService.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /test/components/homeControllerTest.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /test/components/homeControllerTest.js from cache
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Preparing to serve /mocha@2.0.1/starter.js
Fri, 26 Jun 2015 00:28:05 GMT wallaby:middleware Serving /mocha@2.0.1/starter.js from disk
Fri, 26 Jun 2015 00:28:05 GMT wallaby:workers Sandbox (active) [02u09] error: ReferenceError: Can't find variable: sinon
Runtime error: ReferenceError: Can't find variable: sinon
Fri, 26 Jun 2015 00:28:05 GMT wallaby:workers Failed to map the stack to user code, entry message: ReferenceError: Can't find variable: sinon, stack: http://localhost:42014/wallaby_sandbox0.html:16
http://localhost:42014/wallaby_sandbox0.html:20

Fri, 26 Jun 2015 00:28:05 GMT wallaby:workers Run 0 test(s), skipped 0 test(s)
Fri, 26 Jun 2015 00:28:05 GMT wallaby:workers Sandbox [02u09] is responsive, closing it
Finished executing 0 affected test(s)
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Test run finished
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Processed console.log entries
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Processed executed tests
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Processed code coverage
Fri, 26 Jun 2015 00:28:05 GMT wallaby:project Test run result processed and sent to IDE