lovelysystems / robotframework-androidlibrary

Robot Framework Automation Library for Android
29 stars 22 forks source link

androidlibrary Failing with Last Python 2x Release? #65

Open Mattje1 opened 10 years ago

Mattje1 commented 10 years ago

Hi folks,

I'm trying to give Calabash-Android for Robot Framework a go, but I'm running into the following errors in the test app: 'TypeError: _execute_child() takes exactly 17 arguments (18 given)'. A little digging discovers that this function is within the POpen class in the Killableprocess.py library.

Is it a compatibility issue with Python 2.7.6?(released Dec'13) This firefox add-on was having a similar issue: http://stackoverflow.com/questions/20658834/firefox-add-on-sdk-error

Also, other folks have been having this issue since January: https://groups.google.com/forum/#!topic/robotframework-users/v3YBovvV1c8

I'm looking to downgrade Python to test this theory out, but it's a bit of a pain as my other non-Calabash Robot Framework scripts are still working.

Thanks, Matt

memcmp commented 10 years ago

Hi Matt,

Currently we are not working on this library. I think there is a compatibility issue on windows. If you want to you can fix it and i'll do a new release. (think the problem is here https://github.com/lovelysystems/robotframework-androidlibrary/blob/master/src/AndroidLibrary/killableprocess.py#L113 )

Mattje1 commented 10 years ago

Thanks Phillip for your quick response and your efforts in writing this library.

I will put this fix on my backlog :)

munsei commented 10 years ago

Hi Matt,

I'm having the same problem. Would you mind to share what need to be changed in the killableprocess.py to make it work? Appreciate your help.

Thanks.

Mattje1 commented 10 years ago

Hi there,

It appears that the offending introduced argument is 'to_close()'. in the subprocess.py library.

I haven't changed anything yet, but I see 3 options:

  1. Use an earlier version of Python (pre 2.7 I think)
  2. Copy over an earlier version of subprocess.py to your current Python(may not work well with other, newer libraries)
  3. Update Killableprocess.py with similar changes for the 'to_close()' argument in subprocess.py: The changes(in green) are here: http://hg.python.org/cpython/rev/43749cb6bdbd

Good luck and let me know if any of these options work for you, if you get there before me.

cheers, Matt

munsei commented 10 years ago

Hi, I tried the option 2 and it worked at least for the "Start Emulator" keyword already. However, the test case failed at "Start Testserver with apk" keyword with error message "ExpatError: syntax error: line 1, column 2". This is similar to https://github.com/lovelysystems/robotframework-androidlibrary/issues/63

There is not much info we can get from the forum or internet. Not sure if anyone completely successfully automate mobile application testing using this Robot Framework AndroidLibrary?

eniox commented 10 years ago

Hi munsei (and others)

Did you get any further on using Robot Framework with AndroidLibrary? I started to explore Robot Framework recently and I'm now stuck with the same "17 arguments" problem. So it would help a lot to know if there is a such combination of required tools that actually work together.

Nimisha13 commented 9 years ago

Any updates on this error?