auchenberg / volkswagen

:see_no_evil: Volkswagen detects when your tests are being run in a CI server, and makes them pass.
MIT License
14.22k stars 234 forks source link

Detect if tests are running on test engineer's machine. #10

Open vgrigoruk opened 8 years ago

vgrigoruk commented 8 years ago

Would be a huge improvement! Looking forward to see this volkswagen 2.0

auchenberg commented 8 years ago

Any hints on how we would be able to achieve this?

anko commented 8 years ago

Idea: Use presence of certain programs in $PATH as a heuristic. Test engineers are more likely to have afl-fuzz, valgrind or other testing tools installed.

claviola commented 8 years ago

There are several possible tests: check for an interactive shell, the presence of a window manager, matching running processes like browsers and so on.

archersmind commented 8 years ago

My ideal: Check if the test machine is well configured. Or we can check many other items, and score them with certain point. If the total score is above 60 , we dare to say it's a machine used by human. :laughing:

watson commented 8 years ago

@archersmind actually a really interesting problem to solve :smiley:

archersmind commented 8 years ago

@watson Yes, Of course. Let's gather more opinions. Just have the thought, it's going to be the Turing test problem ? Even more fun :computer:

kunaltyagi commented 7 years ago

The check can be as simple as checking for stdin, or $PS1 or a custom env var or tty -s which ends with no error on interactive shells. Best of all, these will work even on SSH, but definitely not in a batch command (script file).