A couple of years ago, I tried Alexa skills once. [Alexa]learn skill kit more [Lambda]Hello World via Alexa Recently, I got Echo spot. I tried to build alexa skill for the spot again. Then, I surprised how the console view is new and useful. I’d leave some reference here as my note. https://github.com/alexa/skill-sample-nodejs-berry-bash https://github.com/alexa/alexa-cookbook/blob/master/guides/testing/postman.md One…More
Category Archives: development
[Kotlin][Android]disable runBlocking checker in a UI thread
This post is completely my personal memo. Recent kotlinx.coroutines has raising exception when runBlocking runs on a UI thread by default. The runBlocking is used to block current thread interruptibly until its completion. https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.experimental/run-blocking.html https://github.com/Kotlin/kotlinx.coroutines/blob/7764e43c6fe9640615747f7830e8aae1b9bc26d2/docs/basics.md#bridging-blocking-and-non-blocking-worlds In 0.25.0, the runBlocking has https://github.com/Kotlin/kotlinx.coroutines/issues/464 . As a workaround, we can disable the checker as below. https://github.com/Kotlin/kotlinx.coroutines/pull/458#issuecomment-408737581 https://github.com/Kotlin/kotlinx.coroutines/issues/227 [update]…More
[Android]Display and control your Android device using scrcpy
Genymotion OSSed their awesome tool. https://github.com/Genymobile/scrcpy Do you guys have experience to use Genymotion? The emulators are brilliant. Handling displayed items via Genymotion Cloud as well. They OSSed the library a half of year ago. It is scrcpy. Below is an example. The right is an emulator. The left is a screen by scrcpy. We…More
[Android][Espresso] Decrease test failure because of ARN dialog
When I ran android tests on OS 8.1 emulators, I faced some ARN dialog by Google bundled apps. They led test failure related with UI, Espresso, because of the dialog remained on the UI. To reduce the error, we can implement like below code in TestRunner. https://github.com/KazuCocoa/EspressoEnv/pull/8/files If the dialog appears before running tests, we…More
[iOS][Appium]How to debug, set break points, WebDriverAgent
Debugging WebDriverAgent is tricky. Appium uses the library to run tests against iOS. In this article, I’d like to leave how to debug WebDriverAgent using Appium. You can set break points in arbitrary lines on WebDriverAgent via Xcode following below. On Xcode Clone the repository and finish the setup Open WebDriverAgent.xcodeproj with Xcode Open Edit…More
[iOS][Appium]Process Arguments by Appium for XCUITest, iOS
Today, I’d like to leave a tip. I’ve implemented test cases using this article for over 3 years. It helped us to control test environment more stable and fast. XCUITest can set process arguments for Instrumentation. According to https://github.com/appium/appium-xcuitest-driver#desired-capabilities, you can set processArguments in capability and the test app can get the value via ProcessInfo.…More
Read “Continuous Delivery with Spinnaker”
I read Continuous Delivery with Spinnaker to catch up with Spinnaker and the bases. Recent my profession is mobile, but I have some experience/knowledge of distributed systems since I studied the Byzantine General Problems in my university. And I also has caught up with network/tools/fundamentals associated with it. (Especially testing and monitoring topics.) You can…More
[Android]some mocking features work only on Android P+
One of my colleagues told me Mockk. The library is pure Kotlin mocking library. An interesting thing for me is Android instrumentation support. I had a question when I saw that why Android P was a limitation. Since it provide mocking feature for final classes / objects in instrumentation tests. I investigated a bit and…More
[iOS]xctestrunner by Google
Note for me. https://github.com/google/xctestrunner Runner written by Python. It helps running test commands.More
Create a PR to update outdated libraries by script
Updating outdated libraries is important. Longtime outdated libraries probably lead difficult updating libraries. Sometimes they have breaking changes. We can reduce the risk updating libraries frequent and keep them small size. Meanwhile, it’s difficult to catch up with ALL outdated libraries and updating them frequently. Since our works aren’t only updating them. Get outdated libraries…More