E Vehicle Android General - 7 Flashcards

1
Q

What does JWT stand for?

A

JSON Web Token

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

In terms of our JUnit tests and Instrumented tests, what do the CI Jobs run?

A

Only the Junit tests, our CI jobs do not and cannot run the instrumented tests.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Using a public key and a private key is known as what type of encryption?

Generally explain how this works.

A

There is a public key that can be shared with anyone and a private key which is not shared.

The public key can be used to encrypt and the private key is used to decrypt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Explain how a JWT works and what the benefit of it is.

A

It works like a reverse asymmetric encryption. Appsec has a private key that they create a token with. Then, all apps can check the token against the public key which anyone can access to see if it is a valid token.

The benefit to this is that if appsec is down, previously generated tokens can still be checked with the public key to see if it is valid.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Using a public key and a private key for security is known as what?

A

Asymmetric encryption

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

When the sender and receiver both have have the same key to encrypt and decrypt, it is called what?

A

Symmetric Encryption

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the simple definition of symmetric encryption?

A

It is when both the sender and receiver have the same key to encrypt and decrypt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Our release branches will automatically deploy to which environment?

How does this happen?

A

UAT

This happens automatically via jenkins pipelines.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What “tier” is the work that is being done off of develop?

A

Tier 1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Explain why a current months feature branch may be behind develop?

A

It could be behind develop because there may be long running feature work aka tier 1 work being pushed to develop and the current months feature branch wouldn’t have those changes yet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Explain how the hot fix process works.

A
  1. Branch off of master and call the branch release/X.X.1-lastReleasedMonth_WX.1

Note: The 1 should be an increase in the patch version.

  1. Branch off of that branch and call it bugfix/MPS-XXXXX-hotFix
  2. Once it is approved, merge your hotfix branch into the release/X.X.1-lastReleasedMonth_WX.1, which will automerge to any open month feature branches as well as develop.
  3. Merge the release/X.X.1-lastReleasedMonth_WX.1 branch into master.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Draw and Study this picture of the new branching strategy.

A

Draw and Study this picture.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Where are the regular monthly feature branches branched off of?

A

The previous months release branch.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What gets automatically merged into master?

A

Nothing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Explain all of the automatic merging situations that bitbucket does.

What is this all based on?

A

When you merge in to a monthly feature branch, it will be automatically merged into the next months feature branch, if it exists, and then to develop.

When you make a branch to do a hotfix off of, you will name it by increasing the patch version. When you merge your hotfix back into this branch, it will auto-merge to any open monthly release branches and then to develop.

It is all based on the versioning that is put into the branch names. Changes made to release branches with lower numbers in their name will auto-merge into any release branches that have higher version numbers in their name, as well as ultimately into develop.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

How many release branches will we have out at one time.

A

We don’t really want more than one out at a time but there may be two out at a time for a week or two.

For example, after FEB code freeze, we will make a MAR branch that we work off of while FEB is tested. We will only branch off of FEB if there is a bug fix that is needed.

Once FEB is released, the branch will be deleted and we will only have MAR open until the next code freeze.

17
Q

What branch needs to be the highest version number?

A

develop

18
Q

What does ate as in conditionArmAte?

A

Automated testing environment.

19
Q

The suit installer drop down menu now has a “Prod Like” option which will point to which build?

A

The latest UAT build.

20
Q

What is XSS and give a brief description of it.

A

Cross-site scripting.

It is a type of security vulnerability typically found in web applications. It enables attackers to inject client-side scripts into web pages.

21
Q

Explain whether or not you should start test names with the name “test”.

A

This used to be required with older version of JUnit but it is not required anymore, so just start with the method name, not “test”

22
Q

What is the vehicle android convention for test names?

A

methodName_ExpectedResult_Condition

23
Q

What does it mean to get a “T Shirt Size” level of effort?

A

To give it a high level, small medium or large rating. Not a 1, 2, 3, 5, 8, etc.

24
Q

What department is in charge of sending the PDFs of LDRs?

A

Messaging Framework

25
Q

If you have a problem with sourcetree not showing your local branch that you created from the terminal, what is the likely problem and solution?

A

You may have 2 different vehicle-android repos being tracked by sourcetree.

Quit it and come back into it and it should ask you what repo you want to look at. You want the one that has your current branch, so if you don’t need the other one, delete it.

26
Q

In IntelliJ and Android studio, how do you open all modified files?

A

Press command + 9 to open the version control change list.

Press command + A to highlight all files, press f4 to open them all.

27
Q

What is the IntelliJ and Android Studio shortcut to close all tool windows?

A

command + shift + f12

28
Q

If you have previously been running instrumentation tests and now the emulator wont run the regular app, what is a possible solution?

A

First, make sure you are on the correct build variant.

Then try uninstalling all vehicle related apps via suite installer like condition, final check in, mCondition, etc. and then try to run.

Finally, you may try deleting all ehi apps via the suite installer and try again to run it.

29
Q

What is ET Bridge?

A

Airport

30
Q

To test what is in develop, you should use what build?

A

QAT

31
Q

A QAT build reflects what branch?

A

develop

32
Q

Since the new branching strategy, what is QAT used for?

A

It is not really used much but could be used to test what is in develop.

33
Q

As an android developer, what build dropdown should I be getting my apps from with the suit installer?

A

X86