Skip to content

Instantly share code, notes, and snippets.

@athlona64
Created March 14, 2020 07:23
Show Gist options
  • Save athlona64/a59527bb22e7960618eaf7cc95472e5a to your computer and use it in GitHub Desktop.
Save athlona64/a59527bb22e7960618eaf7cc95472e5a to your computer and use it in GitHub Desktop.
kplus_sme_test
const wdio = require("webdriverio");
const opts = {
port: 4723,
capabilities: {
platformName: "Android",
platformVersion: "8",
deviceName: "Android",
// app: "/home/osboxes/client-appium/ApiDemos.apk",
// appPackage: "io.appium.android.apis",
appPackage: "com.kasikorn.sme.mbanking",
// appActivity: "com.kasikorn.retail.mbanking.kplus.transfer.activity.TransferPromptPayActivity",
// appActivity: "com.kasikorn.retail.mbanking.kplus.onboard.activity.OnBoardActivity",
// appActivity:"com.kasikorn.retail.mbanking.kplus.home.activity.SplashScreenActivity",
appActivity:"com.kbank.kmbsme.ksme.app.SplashScreenActivity",
appWaitActivity:"*",
automationName: "UiAutomator2",
autoGrantPermissions: true,
noReset: true
}
};
async function kplus_sme_promptpay(con, running, authorized, status, accountNumber, baht){
try{
const client = await wdio.remote(opts);
await sleep(5000);
const openApp = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonSignIn")');
await openApp.click();
await sleep(5000);
const click_pin_1 = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonPinDigits_1")');
await click_pin_1.click();
const click_pin_2 = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonPinDigits_1")');
await click_pin_2.click();
const click_pin_3 = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonPinDigits_1")');
await click_pin_3.click();
const click_pin_4 = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonPinDigits_0")');
await click_pin_4.click();
const click_pin_5 = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonPinDigits_2")');
await click_pin_5.click();
const click_pin_6 = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonPinDigits_0")');
await click_pin_6.click();
const tranfser = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/imageViewTabTransfer")');
await tranfser.click();
const new_transfer = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonNewTransFerList")');
await new_transfer.click();
const transfer_promptpay = await client.$('android=new UiSelector().text("รหัสพร้อมเพย์")');
await transfer_promptpay.click();
const slide_1 = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/pagerLogoContainer")');
await slide_1.touchAction([
'press',
{ action: 'moveTo', x: 150, y: 0 },
'release'
])
const transferInput = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/editTextInputNumbAccount")');
// await transferInput.click();
const phoneDest = await transferInput.setValue(accountNumber);
const click_amount = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/editTextInputAmountWithKeyboard")');
// await click_amount.click();
const amount = await click_amount.setValue(parseFloat(baht));
// await transferInput.click();
const click_transfer = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonTransferFundTransfer")');
await click_transfer.click();
const confirm_transfer = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/buttonFundTransFerConfirm_Confirm")');
await confirm_transfer.click();
const saveSlip = await client.$('android=new UiSelector().resourceId("com.kasikorn.sme.mbanking:id/cardView_fund_transfer_Summary")');
await saveSlip.saveScreenshot('./uploads/'+running+accountNumber+'.png');
// var fileName=running+accountNumber+'.png';
// url_slip = await uploadFile(uploadFolder+fileName, fileName);
// notify.send({
// message: "\n\n ทำการโอนเงินไปยัง บัญชี :"+ accountNumber + " เรียบร้อยแล้ว \n\n "+ "URL : "+ url_slip,
// image: './uploads/'+fileName // local file
// // image: { thumbnail: 'http://example.com/240x240.jpg' } // remote url
// }).then(d =>{
// return true;
// })
await client.deleteSession();
}catch(e){
console.log(e);
log("failed transfer "+ e + 'running :'+ running);
await sleep(2000);
return false;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment