Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Staff 11570: Automate desktop application testing (silent version) #1

Open
wants to merge 81 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
81 commits
Select commit Hold shift + click to select a range
aa696c1
Automate desktop application testing (silent version)
hmagdy Aug 9, 2019
493e51a
Automate desktop application testing (silent version)
hmagdy Aug 9, 2019
51d1e38
Automate desktop application testing (silent version)
hmagdy Aug 9, 2019
226ff8a
make it command line
hmagdy Aug 23, 2019
4b360f8
Automate desktop application testing (silent version)
hmagdy Aug 23, 2019
02f79dc
Automate desktop application testing (silent version)
hmagdy Aug 23, 2019
d553141
Automate desktop application testing (silent version)
hmagdy Aug 23, 2019
f7c4435
make it command line
hmagdy Sep 4, 2019
4d47057
make it command line
hmagdy Sep 4, 2019
0e80fd3
make it command line
hmagdy Sep 4, 2019
c004fbe
Automate desktop application testing (silent version) WIND
hmagdy Sep 6, 2019
ec8b4e3
Automate desktop application testing (silent version) WIND
hmagdy Sep 6, 2019
0561db1
make it CLI
hmagdy Sep 9, 2019
7eef447
make it CLI
hmagdy Sep 9, 2019
5afd1a6
make it CLI
hmagdy Sep 9, 2019
ebb43a5
make it CLI
hmagdy Sep 9, 2019
e0e210b
make it CLI
hmagdy Sep 9, 2019
69b3155
make it CLI
hmagdy Sep 9, 2019
2db9724
make it CLI
hmagdy Sep 9, 2019
c1e7c11
make it CLI
hmagdy Sep 9, 2019
35012b3
make it CLI
hmagdy Sep 9, 2019
d6567f7
make it CLI
hmagdy Sep 9, 2019
915b08d
make it CLI
hmagdy Sep 9, 2019
3c86763
make it CLI
hmagdy Sep 9, 2019
1d053b7
make it CLI
hmagdy Sep 9, 2019
51ebdc0
make it CLI
hmagdy Sep 9, 2019
9641185
make it CLI
hmagdy Sep 9, 2019
84aa71f
make it CLI
hmagdy Sep 9, 2019
f71d757
make it CLI
hmagdy Sep 9, 2019
5543c34
make it CLI
hmagdy Sep 9, 2019
3071d8c
make it CLI
hmagdy Sep 9, 2019
0479b32
make it CLI
hmagdy Sep 9, 2019
13f8ebd
make it CLI
hmagdy Sep 9, 2019
506ce04
make it CLI
hmagdy Sep 9, 2019
ac24b05
make it CLI
hmagdy Sep 9, 2019
1cbeeba
make it CLI
hmagdy Sep 9, 2019
b97b5d1
make it CLI
hmagdy Sep 9, 2019
4ae0ea2
make it CLI
hmagdy Sep 9, 2019
7ab1e25
make it CLI
hmagdy Sep 9, 2019
b877fbf
make it CLI
hmagdy Sep 9, 2019
af6288c
make it CLI
hmagdy Sep 9, 2019
bbc1df0
make it CLI
hmagdy Sep 9, 2019
3b1ef54
make it CLI
hmagdy Sep 9, 2019
69d0149
make it CLI
hmagdy Sep 9, 2019
a2c14b2
make it CLI
hmagdy Sep 9, 2019
d3021b8
make it CLI
hmagdy Sep 9, 2019
5a10ca0
make it CLI
hmagdy Sep 9, 2019
7f12e03
make it CLI
hmagdy Sep 9, 2019
843a084
make it CLI
hmagdy Sep 9, 2019
d7f46b8
make it CLI
hmagdy Sep 9, 2019
f365bac
make it CLI
hmagdy Sep 9, 2019
6ed085c
make it CLI
hmagdy Sep 9, 2019
591fb4b
make it CLI
hmagdy Sep 9, 2019
b5ee774
make it CLI
hmagdy Sep 9, 2019
30137d2
make it CLI
hmagdy Sep 9, 2019
0f72eed
make it CLI
hmagdy Sep 9, 2019
c7e9e9f
make it CLI
hmagdy Sep 10, 2019
540457a
make it CLI
hmagdy Sep 10, 2019
458d80f
make it CLI
hmagdy Sep 10, 2019
519ab3a
make it CLI
hmagdy Sep 10, 2019
dcc787f
make it CLI
hmagdy Sep 10, 2019
2484921
make it CLI
hmagdy Sep 10, 2019
c7d52aa
make it CLI
hmagdy Sep 10, 2019
48998e1
make it CLI
hmagdy Sep 10, 2019
1cded3f
make it CLI
hmagdy Sep 10, 2019
05a867c
make it CLI
hmagdy Sep 10, 2019
d962af1
make it CLI
hmagdy Sep 10, 2019
e17ff53
make it CLI
hmagdy Sep 10, 2019
f7b2844
make it CLI
hmagdy Sep 10, 2019
2d0b9e9
make it CLI
hmagdy Sep 10, 2019
728abaa
make it CLI
hmagdy Sep 10, 2019
e467987
make it CLI
hmagdy Sep 10, 2019
05b764c
make it CLI
hmagdy Sep 10, 2019
d5793f6
make it CLI
hmagdy Sep 10, 2019
846ef69
Refractor firebase-desktop-app Repo
hmagdy Oct 1, 2019
0a4088e
-
Oct 8, 2019
0055eb9
-
hmagdy Oct 9, 2019
e80b2a9
-
hmagdy Oct 9, 2019
f6c722c
-
hmagdy Oct 9, 2019
519e465
-
hmagdy Oct 9, 2019
9e7c956
-
hmagdy Oct 9, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
.DS_Store
.idea
.idea/*
script/node_modules/*
script/node_modules
script/cache/
script/cache/*
node_modules/*
node_modules
script/cache
script/cache/cache/*
script/cache/*
script/bin/cache/*
script/bin/cache/cache/*
script/lib/downloads/
script/out.log
32 changes: 32 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
Staff.com BDD specs

==================================================================

This directory contains feature specs.

- Written in gherkin language.
- This will help guide testers and developers understand each features on how it should work.


Note: This is still in progress.

To run automation testing script follow this:

cd script
npm i
npm install -g ./


td --help
Usage: td [options] [command]

Options:
-h, --help output usage information

Commands:
init|i Create company and cache all details locally.
setup|s Download desktop application.
remove|r Delete desktop application.
check|c Check if TD silent application is running.


11 changes: 0 additions & 11 deletions README.txt

This file was deleted.

9 changes: 9 additions & 0 deletions TD2_TestingVBox/.vagrant/rgloader/loader.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# This file loads the proper rgloader/loader.rb file that comes packaged
# with Vagrant so that encoded files can properly run with Vagrant.

if ENV["VAGRANT_INSTALLER_EMBEDDED_DIR"]
require File.expand_path(
"rgloader/loader", ENV["VAGRANT_INSTALLER_EMBEDDED_DIR"])
else
raise "Encoded files can't be read outside of the Vagrant installer."
end
31 changes: 31 additions & 0 deletions TD2_TestingVBox/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
Steps to build it:
==

- Download https://github.com/joefitzgerald/packer-windows
- Edit files

1- comment `:: cmd /c C:\Windows\Temp\sdelete.exe -q -z C:`
on `packer-windows-master/scripts/compact.bat`

2- change `"ssh_wait_timeout": "2h",`
to `"ssh_wait_timeout": "8h",`
in packer-windows-master/windows_10.json



- Build the image


packer build windows_10.json

- Make the box and create `Vagrantfile` file


vagrant box add win-10 window.box
vagrant init win-10

- Run it at any time


vagrant up
vagrant halt
68 changes: 68 additions & 0 deletions TD2_TestingVBox/Vagrantfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.

# Every Vagrant development environment requires a box. You can search for
# boxes at https://vagrantcloud.com/search.
config.vm.box = "hmwin-10"
# config.vm.boot_timeout = 600


# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
config.vm.provider "virtualbox" do |v|
v.name = "TD2_TestingVBox"
v.gui = true
v.memory = "4096"
v.cpus = 1
end

# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
config.vm.box_check_update = false

# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
# NOTE: This will enable public access to the opened port
config.vm.network "forwarded_port", guest: 80, host: 8080

# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine and only allow access
# via 127.0.0.1 to disable public access
# config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"

# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network "private_network", ip: "192.168.33.10"

# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
# config.vm.network "public_network"

# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
# config.vm.synced_folder "./../script", "/vagrant_data"


# Enable provisioning with a shell script. Additional provisioners such as
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
# documentation for more information about their specific syntax and use.
# config.vm.provision "shell", inline: <<-SHELL
# apt-get update
# apt-get install -y apache2
# SHELL
end
1 change: 1 addition & 0 deletions aws/.vagrant/machines/default/virtualbox/action_set_name
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1569940582
1 change: 1 addition & 0 deletions aws/.vagrant/machines/default/virtualbox/creator_uid
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
501
1 change: 1 addition & 0 deletions aws/.vagrant/machines/default/virtualbox/id
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
542c9d99-f873-4d90-8a91-c8c4eea20a86
1 change: 1 addition & 0 deletions aws/.vagrant/machines/default/virtualbox/index_uuid
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
af356abb96f941418c3c21e200f00efd
1 change: 1 addition & 0 deletions aws/.vagrant/machines/default/virtualbox/vagrant_cwd
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/Users/HMagdy/TD/Repo/bdd-specs/aws
9 changes: 9 additions & 0 deletions aws/.vagrant/rgloader/loader.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# This file loads the proper rgloader/loader.rb file that comes packaged
# with Vagrant so that encoded files can properly run with Vagrant.

if ENV["VAGRANT_INSTALLER_EMBEDDED_DIR"]
require File.expand_path(
"rgloader/loader", ENV["VAGRANT_INSTALLER_EMBEDDED_DIR"])
else
raise "Encoded files can't be read outside of the Vagrant installer."
end
88 changes: 88 additions & 0 deletions aws/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
// var AWS = require('aws-sdk');

// workspaces.associateIpGroups(params, function (err, data) {
// if (err) console.log(err, err.stack); // an error occurred
// else console.log(data); // successful response
// });


/*
* Copyright 2013. Amazon Web Services, Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
**/

// Load the SDK and UUID
var AWS = require('aws-sdk');
// var uuid = require('node-uuid');

// Create an S3 client
var s3 = new AWS.S3();
var workspaces = new AWS.WorkSpaces();

// Create a bucket and upload something into it
// var bucketName = 'node-sdk-sample-' + uuid.v4();
var keyName = 'hello_world.txt';
// var params = {
// ResourceIds: [ /* required */
// 'STRING_VALUE',
// /* more items */
// ]
// };
// workspaces.describeClientProperties(params, function(err, data) {
// if (err) console.log(err, err.stack); // an error occurred
// else console.log(data); // successful response
// });

console.log(workspaces);
// s3.createBucket({Bucket: bucketName}, function() {
// var params = {Bucket: bucketName, Key: keyName, Body: 'Hello World!'};
// s3.putObject(params, function(err, data) {
// if (err)
// console.log(err)
// else
// console.log("Successfully uploaded data to " + bucketName + "/" + keyName);
// });
// });

var params = {
Workspaces: [ /* required */
{
BundleId: 'STRING_VALUE', /* required */
DirectoryId: 'STRING_VALUE', /* required */
UserName: 'STRING_VALUE', /* required */
RootVolumeEncryptionEnabled: true || false,
Tags: [
{
Key: 'STRING_VALUE', /* required */
Value: 'STRING_VALUE'
},
/* more items */
],
// UserVolumeEncryptionEnabled: true || false,
// VolumeEncryptionKey: 'STRING_VALUE',
// WorkspaceProperties: {
// ComputeTypeName: VALUE | STANDARD | PERFORMANCE | POWER | GRAPHICS | POWERPRO | GRAPHICSPRO,
// RootVolumeSizeGib: 'NUMBER_VALUE',
// RunningMode: AUTO_STOP | ALWAYS_ON,
// RunningModeAutoStopTimeoutInMinutes: 'NUMBER_VALUE',
// UserVolumeSizeGib: 'NUMBER_VALUE'
// }
},
/* more items */
]
};
workspaces.createWorkspaces(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Empty file added aws/out.log
Empty file.
Loading