Andy Pavlo November 29, 2015November 29, 2015November 29, 2015 Testing H- Store.

Slides:



Advertisements
Similar presentations
Introduction to HT-IDE3000 Micro-C development System Department.
Advertisements

1. What is Subversion? Why do we need CM? Basic concepts Repositories Options Setup Clients Options Setup Operation Troubleshooting Slide 2.
© 2006 IBM Corporation JFS tests process on System z.
Module 7: Advanced Development  GEM only slides here  Started on page 38 in SC09 version Module 77-0.
Introduction to PHP To boldly go where JavaScript has never been…
Introduction to Java Lab CS110A – Lab Section 004 Instructor: Duo Wei.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Introduction to CVS 7/3/20151UMBC CMSC 341. Outline Introduction to Source Code Management What is CVS? CVS for Project Submission Basic commands Checkout,
Source Code Management Or Configuration Management: How I learned to Stop Worrying and Hate My Co-workers Less.
Enhancing Developer Productivity using Eclipse Presented by: Tom Sausner.
Creating Clusters in a Virtual Environment Purpose: To create a development environment with limited hardware resources that allows the testing of parallel.
Creating a Hello App Using Google App Engine. What are Google apps? Apps is an abbreviation for application. An app is a piece of software. It can run.
SubVersioN – the new Central Service at DESY by Marian Gawron.
FileSecure Implementation Training Patch Management Version 1.1.
Administration etc.. What is this ? This section is devoted to those bits that I could not find another home for… Again these may be useless, but humour.
ProSense BELGRADE Deploying SunSPOT SDK and Emulator on your Desktop or Laptop Computer Author: Stanislava Stanković, B.Sc. student of the School of Electrical.
CONTINUOUS INTEGRATION, DELIVERY & DEPLOYMENT ONE CLICK DELIVERY.
Version control Using Git 1Version control, using Git.
Version Control with Subversion. What is Version Control Good For? Maintaining project/file history - so you don’t have to worry about it Managing collaboration.
Apache Tomcat Web Server SNU OOPSLA Lab. October 2005.
Customized cloud platform for computing on your terms !
Sonam Chauhan Corporate Express B2B Change Management at Corporate Express.
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
AUTOBUILD Build and Deployment Automation Solution.
SharePoint 2010 Development Environment A Guide to Setup SharePoint 2010 Development Environment on Windows 7 Machine.
Business Unit or Product Name © 2007 IBM Corporation Introduction of Autotest Qing Lin.
Guidelines for Homework 6. Getting Started Homework 6 requires that you complete Homework 5. –All of HW5 must run on the GridFarm. –HW6 may run elsewhere.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
ATG Environment Setup In this session you will learn – Setting Up ATG environment – Creating new ATG application – Configuring Data Source – Configuring.
Step By Step Windows Server 2003 Installation Guide Step By Step Windows Server 2003 Installation Guide.
Version control Using Git Version control, using Git1.
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
SENG 301 – Tutorial 1 Introduction to Eclipse, Subclipse, and JUnit Slides: Theodore D. Hellmann.
GIT and JUnit Dr. Andrew Wallace PhD BEng(hons) EurIng
Using Opal to deploy a real scientific application as a Web service Sriram Krishnan, Ph.D.
Phone: Mega AS Consulting Ltd © 2007  CAT – the problem & the solution  Using the CAT - Administrator  Mega.
Andy Pavlo October 18, 2015October 18, 2015October 18, 2015 Running on EC2.
Copyright © 2015 – Curt Hill Version Control Systems Why use? What systems? What functions?
C++ REVIEW – POINTERS AND TEST DRIVEN DEVELOPMENT.
Installing Repast in the Eclipse IDE Charlie Gieseler 6/28/04.
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Xihui Chen ORNL/SNS April Control System Studio Training - Development.
A Simple Introduction to Git: a distributed version-control system CS 5010 Program Design Paradigms “Bootcamp” Lesson 0.5 © Mitchell Wand, This.
Running Kuali: A Technical Perspective Ailish Byrne (Indiana University) Jonathan Keller (University of California, Davis)
© Spiros Mancoridis Software Engineering (Unit Testing Tools) Dependable Software Systems Topics in Unit Testing Tools Material drawn from [ junit.org,
PART 2 INTRODUCTION TO DYNAMIC WEB CONTENT AND PHP.
Continuous Integration CruiseControl.Net. Best Practices Use version control; Automate the build; Build should be self tested; Developers must commit.
Build Systems Presentation December 14, 2015 Noon-1pm Kathy Lee Simunich Bldg. 203/ D120 Brought to you by: Argonne Java.
1 G52IWS: Example Web-services Chris Greenhalgh. 2 Contents Software requirements AXIS web service run-time components Getting started with Jetty & AXIS.
All the dSoftArk Tools Getting started!. Tools dSoftArk is a semi-realistic, agile, development project –Industrial strength software (programming, TDD,
Trilinos Framework: Next Steps Thursday November 9, :45-9:30 a.m. Jim Willenbring Mike Phenow.
(1) Installing the Software ICU Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii Honolulu.
(1) Introduction to Continuous Integration Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of.
Don’t Duck Metadata March 2005 Introducing Setting Up a Clearinghouse Node Topic: Introduction to Setting Up a Clearinghouse Node Objective: By.
Time to apply stuff… Faculty of Mathematics and Physics Charles University in Prague 5 th October 2015 Workshop 1 – Java Wrestling.
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
Tomcat Setup BCIS 3680 Enterprise Programming. One-Click Tomcat Setup 2  This semester we’ll try to set up Tomcat with a PowerShell script.  Preparation.
Planning a Migration.
Source Code Control For CSE 3902 By: Matt Boggus.
How to Start SQL Server and SSDT BI in Local
Creating Clusters in a Virtual Environment
Unit Testing.
Version Control with Subversion
SENG 301 – Tutorial 1 Introduction to Eclipse, Subclipse, and JUnit
Version control, using Git
The Vocabulary of Performance Tuning
The Vocabulary of Performance Tuning
JENKINS TIPS Ideas for making your life with Jenkins easier
The Vocabulary of Performance Tuning
The Most Popular Android UI Automation Testing Tool Andrii Voitenko
The Vocabulary of Performance Tuning
Presentation transcript:

Andy Pavlo November 29, 2015November 29, 2015November 29, 2015 Testing H- Store

You must use the “official” Eclipse source code style/format. – Easy to download and install – 4 Space Indentation / No Tabs – Automatic checking coming soon… Project Rule #1

Do not commit personal files: – Eclipse settings/metadata. – Temporary files, logs, tarballs. – Pictures of your cat. Project Rule #2

X

Avoid using locks in your code: – No synchronized, No Semaphores, No ReentrantLocks. – Never use Vector or Hashtable. – CAS counters are ok (e.g., AtomicInteger) – If you think you need a lock, write a clear explanation in the code as to why or ask Andy. Project Rule #3

Use primitive objects sparingly. – Use int/long instead of Integer/Long – Avoid auto-boxing (Integer.valueOf()) Don’t allocate short-lived collections – For partition/site objects, use array instead of Map – Consider using an object pool (HStoreObjectPools) Additional Suggestions

All test cases for database and projects written using JUnit. Quick vs. Full – Full requires 2GB of space for testing files. H-Store Test Harness $ ant junit $ ant junit-full $ ant junit $ ant junit-full

Continuous integration service automatically tests your project when you push changes to Github. – Must be using latest version ( ) – me your project URL after you merge. Build & Test Server

Build & Test Server

Create a new class with ‘Test’ prefix in tests directory: – Real Code: src/frontend/edu/brown/hstore/wal/Logger.java – Unit Test Code: tests/frontend/edu/brown/hstore/wal/TestLogger.java Writing a Simple Unit Test

Extend edu.brown.BaseTestCase Any method name that starts with ‘test’ is automatically executed. Can execute in directly Eclipse. Writing a Simple Unit Test

Regression test suite allow you to test the full system. Automatically setup and deploy cluster configurations directly in tests. – Compiles catalog and provides client handle. – Only on localhost Writing a Regression Test

If you get an UnsatisfiedLinkError, make sure you have the “VM Arguments” configured properly: – Run Configurations → JUnit → Arguments Writing a Regression Test -ea - Djava.library.path=obj/release/native libs