Difference between revisions of "Development"

From YouTestMe Wiki
Jump to navigation Jump to search
Line 111: Line 111:
  
 
Example report:
 
Example report:
[{{SERVER}}/database_reports/ytm-9_ytm1/ytm-9_ytm1_classic.html]
+
[{{SERVER}}/youtestme/database_reports/ytm-9_ytm1/ytm-9_ytm1_classic.html]

Revision as of 23:04, 18 December 2015

Development Culture

Company strategy is establishing a highly efficient and productive culture by:

  • Automating all repetitive processes;
  • Establishing and documenting procedures for all common tasks;
  • Considering every task as a project and properly documenting it so anybody can take on that task at any given moment;
  • Adhering to company standards and policies.

Development Methodologies


GDAO – Generated Data Access Objects

Ideal for performances, learning curve, and rapid application development. This G-DAO framework is a combination of:

• Code generator

• Java technologies such as JDBC

GDAO Presentation

Development Policies

Development Environment

Project Root Directory

Create a “Root Development” directory:

 Example: C:\Zoran\Development
  • You should use your username as part of the root directory name because that computer could be used by several individuals.
  • Review all the code in that directory.

Your directory structure will look something like this (depending on the projects you checked out).

Imageytm1.png


For remote desktop computers which are used by more than one person, create a directory with your name and copy - paste the Development directory to the newly created directory. For example, instead of C:\Development, you should have C:\Zoran\Development. This policy is made so that conflicts are avoided while using SVN, since more than one person is using the virtual machine. Personal computers can be set in any way you like.

Files that start with “z” in “C:\Development” are utility DOS scripts that can help you checkout, update and commit files in multiple SVN Repositories. A list of all affected repositories is contained in the file named “projects.lst”. You should edit this file and keep only a list of repositories that you will be working on.

All “z” files and default “projects.lst” are in the archive zfiles.zip.

 “z” scripts in SVN: c:\Development\res\Scripts\SVN DOS Scripts\
Back End Source Code Location
 c:\Zoran\Development\youtestme\source\
Front End Source Code Location
 c:\Zoran\Development\youtestme\www_source\


For more detailed information watch the YouTube video: YouTestMe Development Environment

Test Data


All test data have to be created in spreadsheets located here:

\youtestme\batch_source\test_data\excel\

Test data is loaded by Java program:

com.youtestme.loaders.excel.testdata.LoadAllTestData

Test data should always be generated through re-runnable programs, scripts, files, spreadsheet. The process should be executable in one step.

Note that data created any other way (not through integrated process described below) will be lost every time database is refreshed.

There are great benefits of using standardized test data so please stick to the process. Be proactive and create or amend test data spreadsheets.


Database

Each developer should use their own database schema for development. This way conflict are avoided and development is much more efficient.

Do the following:

- Create your own scheme and implement data model and data in it by using shell scripts or Oracle database export file created from another scheme.

- If you are unfamiliar with database administration please ask somebody to do it for you.


SQL*Plus and Oracle Client

SQL*Plus is an Oracle shell used for executing SQL and PL/SQL statements and programs. It is a universal tool for development and data administration. Unfortunately it is not very user friendly because it is exclusively based on commands. It is mostly used either when other tools are not available or when other tools cannot do operations that SQL*Plus can perform – i.e. changing expired Oracle password.

In order to run SQL*Plus and other programs that require Oracle native network interface you need to configure Oracle*Net. You can find details about it here: Oracle Client and SQL*Plus


Selenium

Selenium is a suite of tools specifically for automating web browsers. It runs in many browsers and operating systems and can be controlled by many programming languages and testing frameworks. Selenium is useful if you want to:

- Create quick bug reproduction scripts;

- Create scripts to aid in automation-aided exploratory testing;

- Create robust, browser-based regression automation;

- Scale and distribute scripts across many environments.

More precise use of Selenium testing can be found on these links:

YouTestMe Selenium 1

YouTestMe Selenium 2


For more detailed information make sure you read: YTM Developer Manual


Example report: [1]